Mobile device with integrated duplex radio capabilities

ABSTRACT

Wireless-conferencing radios communicate directly with each other without a bases station using a multiple access protocol, such as Time Division Multiple Access (TDMA). Wireless-conferencing radios can be formed into groups and larger mesh networks. Some groups of wireless-conferencing radios use frequencies in a cellular band to communicate.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent ApplicationNo. 62/088,338, filed on Dec. 5, 2014, entitled “Communication and DataHandling in a Mesh Network using Duplex Radios” and U.S. ProvisionalPatent Application No. 62/087,964, filed on Dec. 5, 2014, entitled“Mobile Device with Integrated Duplex Radio Capabilities,” thedisclosures of which are hereby incorporated by reference in theirentirety for all purposes.

The following two U.S. patent applications (including this one) arebeing filed concurrently, and the entire disclosure of the otherapplication is incorporated by reference into this application for allpurposes:

Application 14/______, filed Dec. 7, 2015, entitled “Communication andData Handling in a Mesh Network using Duplex Radios” (Attorney DocketNo. 094353-000710US-0962194); andApplication 14/______, filed Dec. 7, 2015, entitled “Mobile Device withIntegrated Duplex Radio Capabilities” (Attorney Docket No.094353-000810US-0961605).

BACKGROUND

This disclosure relates in general to radio communication, and morespecifically, without limitation, to two-way portable radiocommunication and time-division multiplexed communication. Two-wayradios, generally referred in this application as simply radios, enablewireless communication between two or more people. To operate, manyradios require either a push-to-talk (PTT) button or a voice operatedswitch (VOX). For example, walkie-talkies today require either a PTTbutton or VOX. One disadvantage of both PTT and VOX is that both PTT andVOX communications are half-duplex. In half-duplex communication, aradio can either transmit or receive at a given time, not both. In thisapplication, the term PTT radio generally refers to radios usinghalf-duplex communication where a user can either speak or listen at agiven time, not both.

Full-duplex communication, commonly referred to as duplex communication,permits a radio to simultaneously transmit and receive at the same time,enabling a user of a duplex radio to both speak and listen at the sametime. One way a radio can operate in a duplex mode, without needing aPTT button or VOX, is by using a base station. An example of wirelessradios connected by a base station, and thus enabling full-duplexcommunication, is two users talking to each other using mobile phones.Another example of wireless radios connected by a base station is a hometelephone system with wireless telephones that can be placed in aconferencing mode.

SUMMARY

Radios can operate in duplex communication without a base-station usinga multiple-access protocol, such as time-division multiplexing (e.g.,using as a time-division multiple access (TDMA) protocol). An example ofradios communicating using a TDMA protocol to create awireless-conferencing system that does not use a base station isdisclosed in U.S. patent application Ser. No. 10/194,115, filed on Jul.11, 2002, which is incorporated by reference for all purposes. Anotherexample of radios creating a wireless-conferencing system that does notuse a base station is in U.S. Pat. No. 8,705,377, issued on Apr. 22,2014, which is incorporated by reference for all purposes. Awireless-conferencing system allows users to speak and listen, at thesame time, to others in the wireless-conferencing system without using abase station. In some embodiments, direct sequence spread spectrumcommunication, frequency hopping spread spectrum communication, and/orsingle channel communication are used in conjunction with the TDMAprotocol.

Further areas of applicability of the present disclosure will becomeapparent from the detailed description provided hereinafter. It shouldbe understood that the detailed description and specific examples, whileindicating various embodiments, are intended for purposes ofillustration only and are not intended to necessarily limit the scope ofthe disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an embodiment of a wireless-conferencingsystem.

FIG. 2 is a block diagram of electronics of an embodiment of a radio.

FIG. 3A is an embodiment of a frame used for TDMA divided into timeslots.

FIG. 3B shows an embodiment of time progression for multiple frames.

FIG. 3C is a simplified diagram of an embodiment multiple frames withradios assigned to transmit during various time slots.

FIG. 3D is a simplified diagram giving an example of an embodiment ofradios transmitting during reserved slots.

FIG. 3E is a simplified example of an embodiment of transmissionassignments and frequencies during the extra slot, wherein radios do nottransmit equally on each frequency.

FIG. 4A depicts an embodiment of a transmission during the voice slot304 compared to an embodiment of a transmission during the extra slot308.

FIG. 4B depicts an embodiment of a preamble of the voice slot.

FIG. 4C depicts an embodiment of a preamble of the extra slot.

FIG. 4D depicts an embodiment of non-voice data transmission during theextra slot.

FIG. 5 illustrates a flowchart of an embodiment of a process forreceiving both voice data and non-voice data in a wireless-conferencingsystem.

FIG. 6 illustrates a flowchart of an embodiment of a process 600 forassigning a radio a voice slot, after voice slots are already assigned.

FIG. 7 depicts an embodiment of a wireless-conferencing group havingthree rooms.

FIG. 8 illustrates a flowchart of an embodiment of a process for sharinga group profile.

FIG. 9 shows a block diagram of an embodiment of twowireless-conferencing systems.

FIG. 10 illustrates a flowchart of an embodiment of a process for usingmultiple group configurations.

FIG. 11 illustrates a flowchart of an embodiment of a process forcontrolling a radio in a wireless-conferencing system.

FIG. 12 depicts a simplified diagram of an embodiment of a weapon systemreceiving an operation code from a radio.

FIG. 13A is a block diagram of the internal components of an embodimentof a mobile device that includes full-duplex radio capabilities.

FIG. 13B is a block diagram of the internal components of anotherembodiment of a mobile device that includes full-duplex radiocapabilities.

FIG. 13C is a block diagram of the interface components of an embodimentof a mobile device that includes full-duplex radio capabilities.

FIG. 14 is a flowchart of an embodiment of a process for activatingfull-duplex radio capabilities on a mobile device.

FIG. 15 is a flowchart of an embodiment of a process for facilitatingfull-duplex radio communication between mobile devices on a basestation.

FIG. 16 is an illustration of an example environment within which anembodiment of a system with base stations performing signal compounderfunctionality can be implemented.

FIG. 17 is an interaction flowchart of an embodiment of a process forauto dialing a mobile device via a cellular network when radiocommunication is lost.

FIG. 18 is an illustration of an embodiment of a user interface on amobile device for configuring radio capabilities.

FIG. 19 is an illustration an embodiment of a user interface on a mobiledevice for configuring users in a wireless-conferencing group.

FIG. 20 is an illustration of an embodiment of a user interface on amobile device for configuring conferences between wireless-conferencinggroups.

FIG. 21 is an illustration of an embodiment of a user interface on amobile device for starting a new wireless-conferencing group.

FIG. 22 is an illustration of an embodiment of a user interface on amobile device for joining a wireless-conferencing group.

In the appended figures, similar components and/or features may have thesame reference label. Further, various components of the same type maybe distinguished by following the reference label by a dash and a secondlabel that distinguishes among the similar components. If only the firstreference label is used in the specification, the description isapplicable to any one of the similar components having the same firstreference label irrespective of the second reference label.

DETAILED DESCRIPTION

Embodiments of the present invention are described here with specificityto meet statutory requirements, but this description is not necessarilyintended to limit the scope of the claims. The claimed subject mattermay be embodied in other ways, may include different elements or steps,and may be used in conjunction with other existing or futuretechnologies. This description should not be interpreted as implying anyparticular order or arrangement among or between various steps orelements except when the order of individual steps or arrangement ofelements is explicitly described.

In some embodiments, a system has a plurality of radios that communicatewith each other by wireless transceivers. The plurality of radioscommunicate with each other communicate using a multiple-access protocol(e.g., time division multiple access (TDMA)) to form awireless-conferencing system. The wireless-conferencing system providesduplex communication without using a base station. In some embodiments,non-voice data is transmitted (e.g., biomedical data, location data,etc.).

In some embodiments, a wireless-conferencing system comprises two ormore groups (e.g., sometimes referred to as a mesh network). A groupcomprises two or more radios that are identified by a unique groupnumber and/or a group profile. In some embodiments, a group comprisesthree or more radios that are identified by a unique group number and/ora group profile. In some embodiments, a group profile includes a hopsequence. An example of a hop sequence is a set number of frequencies,order of frequencies, duration(s) spent on frequencies, and/or timing toswitch between frequencies to communicate using TDMA. Radios in a groupare configured to communicate directly with each other without using abase station. In some embodiments, a radio can switch between groups. Insome embodiments, voice data and/or non-voice data are shared with onlya specific group. In some embodiments, voice data and/or non-voice dataare shared between groups. In some embodiments, a group has a firstnumber (e.g., 4, 7, 8, 9, or 10) of time slots for voice and/or a secondnumber (e.g., 1, 2, or 3) of time slots for non-voice data. In someembodiments, a radio is configured to transmit non-voice data on one ormore of the set number of time slots for voice. In some embodiments,time slots of the first number of time slots each have a first duration(and time slots of the second number of time slots have a secondduration. In some embodiments, the first duration is different (e.g.,longer) than the second duration.

Referring first to FIG. 1, a block diagram of an embodiment of awireless-conferencing system 100 is shown. The wireless-conferencingsystem 100 comprises a first radio 104-1, a second radio 104-2, a thirdradio 104-3, and a fourth radio 104-4. Each radio 104 of thewireless-conferencing system 100 comprises a transceiver 108 and anantenna 110 for sending and receiving data. In some embodiments, atransmitter and a receiver are used instead of a transceiver. In someembodiments, the data comprises voice data 112. In some embodiments, thedata comprises non-voice data 116. In some embodiments, the first radio104-1, the second radio 104-2, the third radio 104-3, and the fourthradio 104-4 use spread-spectrum communication (e.g., frequency hoppingor direct sequence). In some embodiments, spread-spectrum communicationis not used.

In some embodiments, the radios 104 have one or more parameters that areprogrammable. The one or more parameters identify whether or not a radio104 is a master radio by default. In some embodiments, the radios 104use switch-to-talk (STT) technology as described in U.S. Pat. No.8,681,663, issued on Mar. 25, 2014, which is incorporated by referencefor all purposes. Using STT technology, a radio 104 can be in a firstmode or a second mode, wherein in the first mode, the radio 104transmits voice data during a designated time slot (in TDMA); but in thesecond mode (a listen-only mode), the radio 104 is not designated a timeslot, but the radio 104 receives data (voice data and/or non-voicedata). In some embodiments, the one or more parameters identifies if theradio 104 is in a listen-only mode by default. In some embodiments, ifthe radio 104 is not a master radio by default, the one or moreparameters will have the radio 104 become a master radio if the radio104 does not detect a master radio (e.g., as described in U.S. Pat. No.9,143,309, issued on Sep. 22, 2015, which is incorporated by referencein its entirety). For example, a radio 104 could be set to be a masterradio and start out in listen-only mode.

In some embodiments, an amount of time each radio 104 in thewireless-conferencing system 100 searches for a master radio and/or fora slave radio is different so that two radios 104 won't stay insearching for slave mode or searching for master mode at the same times.In some embodiments, a search-for-master mode timing can vary betweentransmitters or both search-for-master mode and master mode timings canvary. It should be noted that there are reasonable variations in thetiming so that no two radios 104 will have the same timing. This problemcan be solved by programming the radios 104 with variable timing to makesure that no two radios 104 are the same within thewireless-conferencing system. In some embodiments, the length of timewaiting in the master mode is varied according to an address of a radio104.

In some embodiments, a group can have more than one master radio. Afirst master radio can be used to time synchronize clocks of radios 104to maintain timing in filling buffers. Timing information can be passedfrom the first master radio to a second master radio for situationswhere radios 104 cannot communicate with one another. The master radioscan still communicate with one another, but each master radio may not beable to communicate with each slave radio. A master radio canindependently assign slave radios to available time slots. In someembodiments, each master radio tracks which time slots are available tobe assigned (e.g., by each master radio receiving data packets fromother master radios and tracking which assignments have been made and/orspecial packets received from other master radios that list time slotassignments of other master radios. Master radios can be limited tospecific slots or assigned to any slot by an original master radio of agroup. In some applications, master radios can set up mini-communicationlinks to specific time slots in a multiple master system so that eachmaster radio can have private communications with specific slave radios(e.g., rooms). In some embodiments, rooms are set up using uniqueaddresses of each radio 104 and/or unique group number. In someembodiments, all radios 104 do not have buffer information from allother radios 104, but only those radios 104 associated with their roomand/or group. In some embodiments, voice data from all radios of awireless-conferencing group are buffered, but used differently based onwhich rooms radios are in.

In some embodiments, a frequency hopping spread spectrum system is usedto create the wireless-conferencing group. Radios using the same hoppingpattern at the same time are part of a group. In some embodiments, afirst group may share the same hopping pattern as a second group, butuse a different timing. This allows multiple groups to operate at thesame time. In some embodiments, different groups use different hoppingpatterns and/or hopping patterns that use different channels.

In some embodiments, a direct sequence spread spectrum system can beused in which different groups use different spreading codes, differentradio channels, and/or time-offset spreading codes. Starting a spreadingsequence at different times to differentiate between different groupshaving the same spreading code is a time-offset spreading codetechnique.

In some embodiments, other types of radios are used instead of afrequency hopping spread spectrum radios to create awireless-conferencing system 100. For example, a single channel radiowith enough bandwidth or a direct sequence/code division multiple access(CDMA) spread spectrum radio could also be used.

Referring next to FIG. 2, a block diagram of electronics 200 of anembodiment of a radio 104 is shown. RF section 55 is a frequency hoppingspread spectrum transceiver (e.g., used for transceiver 108 in FIG. 1).An output of RF section 55 is a quadrature detected analog signalshowing frequency demodulated data. In some embodiments, frequency shiftkeyed (FSK) data is used, but other forms of data modulation could beused with corresponding demodulation. The quadrature detected signalgoes into an analog section 56 where it is digitized and sent to an ASIC58. The ASIC 58 takes data in, recovers a clock from the received clockdata, confirms that a start word is received correctly, notifies amicroprocessor 57 that data is coming, converts incoming data stream toa parallel format, and/or sends one byte of received data at a time tothe microprocessor 57. In some embodiments, data is converted toparallel format to make it easier for a processor to store data in RAMand/or to operate on the data. In some embodiments, recovering the clockcomprises a transmitter sending a data preamble that a receiver uses todetermine a clock edge and clock speed of a first clock, such that thefirst clock is used to bring in a data packet. The microprocessor 57receives data and stores it in buffers for each time slot. Themicroprocessor 57 can also be called a micro controller. Themicroprocessor 57 also controls the RF section 55 through ASIC 58,programs an audio codecs 59, programs the ASIC 58, etc. Themicroprocessor 57 operates timing functions along with ASIC 58. Themicroprocessor 57 keeps separate buffers for each radio from which itreceives data from. Voice data from each radio is sent to microprocessor63, which handles voice data. Microprocessor 63 converts data receivedfrom each radio into a string of 16 bit words that represents voiceinformation from each radio. The 16 bit words from each of the radiosare summed together to create a combined signal that is sent to codec59. In some embodiments, some voice data from radios is not combined.The codec 59 sends the combined signal to speaker 61.

Microphone 60 amplifies audio as voice information and sends the voiceinformation into codec 59. The microprocessor 63 brings voiceinformation from codec 59 in a 16 bit word format that is a directanalog to digital conversion of the voice information into voice data. Astring of 16 bit words from codec 59 is converted into compressed data(e.g., comprising voice data) for transmitting to the other radios. Insome embodiments, a compression technique that is used is calledcontinuous variable slope detection (CVSD). In some embodiments, othervoice conversion techniques are used for compression. Data may be ableto be summed in a converted mode to create a combined signal. Afterconverting microphone data into a compressed digital form,Microprocessor 63 sends the data to microprocessor 57 where the data isbuffered for sending to other radios during a time slot. In someembodiments, data sent to the microprocessor may be processed first-in,first out (FIFO).

Sensor Interface 64 performs timing and conversion requirements forbringing in sensor data, such as heartrate monitor 65 data and fromother sensors 66. Examples of other sensors 66 include a blood pressuresensor, other biomedical sensors, motion sensors, remote sensors,gyroscope data, and positioning data such global positioning satellite(GPS) data. Sensor Interface 64 sends sensor data (e.g., non-voice data)to Microprocessor 57 where sensor data is buffered for sending to otherradios during a time slot. Microprocessor 57 buffers sensor datareceived from other radios. Microprocessor 57 can then organize and sendappropriate sensor data to display interface 62.

User Interface 67, in some embodiments, is a keypad. The keypad is usedto adjust speaker volume, control group number selection, control STTfunctions, display feedback through LEDs, and turn the unit on and off.The user interface 67 can also control what is displayed through thedisplay interface 62. In some embodiments, some or all display functionsare replaced with a voice control system and/or a touch screen.

By having a group number selection process in the user interface 67, theradio can change between group numbers. This allows a radio tocommunicate with more than one group. A radio with more than one groupnumber can be part of different conferencing groups by changing thegroup number of the radio to a different group number (e.g., to a groupnumber that is stored in memory). Each time a user changes groupnumbers, the radio will sum audio signals from other radios that areusing the same group number. If a new group number is also in a list ofgroup numbers in a master radio, a switch to a new group is accomplishedin about one frame. If the new group number is not in the list of groupnumbers in the master radio, then the radio goes into asearch-for-master mode in order to be added to an appropriate group withthe new group number. In some embodiments, addresses, or parts ofaddresses, are used instead of group numbers to switch to differentgroups for voice communication. Even though only 10 radios can transmitduring one frame in some embodiments, many more radios can listen to the10 radios that are transmitting (e.g., using STT technology). Connector68 is used to program parameters into microprocessor 57.

With a wireless-conferencing system 100, complexity of thewireless-conferencing system 100 is reduced if time bases of differentradios are synchronized. Thus, audio buffers on communicating radioswill empty at the same rate. Since there are inaccuracies in crystals ineach radio, a means to keep all the radios synchronized is used. Onemethod is to phase lock crystals in each of the radios by using arecovered clock in one data stream as a reference in a phase-lock loop.In another method, a crystal or a time base of each radio issynchronized to an external time base (e.g., GPS) that can be receivedby other radios. An external time base can also be used to keep accuratepositioning of time slots. In some embodiments, when a master radiostarts sending a data packet, each slave radio has a pointer to a memoryaddress in an audio buffer for sending information to the speaker 61.This pointer points at the same memory address when the master radiostarts transmitting. If the pointer is ahead or behind the correctaddress, the microprocessor 57 will speed up or slow down the clock ratewhich is generated in ASIC 58. This will simulate phase locking thecrystals of the radios.

FIG. 3A shows an embodiment of a frame 300 used for TDMA divided intotime slots.

The frame 300 is a specified duration of time. The voice slots 304 areused to transmit voice data; and, in some embodiments, to also transmitnon-voice data. The extra slot 308 is used to transmit non-voice data. Afirst voice slot 304-1 (S1) is followed by a second voice slot 304-2(S2), followed by a third voice slot 304-3 (S3), followed by a fourthvoice slot 304-4 (S4), followed by a fifth voice slot 304-5 (S5),followed by a sixth voice slot 304-6 (S6), followed by a seventh voiceslot 304-7 (S7), followed by an eighth voice slot 304-8 (S8), followedby a ninth voice slot 304-9 (S9), followed by a tenth voice slot 304-10(S10), followed by the extra slot 308 (S11 or ES).

In some embodiments, each of the voice slots 304 are of equal length.The first voice slot 304-1 is allocated to the master radio of awireless-conferencing group. An audio sampling rate and RF data rate areset up so that audio data that is collected during one frame can betransmitted in one of the time slots. In some embodiments, voice data isnot compressed. In some embodiments, voice data is compressed. Forexample, voice signals from the microphone 60 are sampled at rate ‘x’for a frame, creating voice data. The voice data is then transmitted toother radios at rate ‘y,’ wherein rate y is equal to or greater thanrate x. In some embodiments, rate y is more than double rate x. Theextra slot 308 is set up to transmit non-voice data (e.g., heart rate,GPS, gyroscope data, etc.). In some embodiments, the extra slot 308 issubdivided into multiple smaller time slots for sending non-voice databy several radios. Each of the smaller time slots (also referred to asmini time slots) in the extra slot 308 has enough time to send apreamble before each non-voice data stream unless one radio uses morethan one consecutive mini time slot to send more non-voice data. In someembodiments, nine time slots are used, with eight time slots for voiceslots 304 and on time slot for the extra slot 308. Though if more timefor non-voice data is needed, there could be six voice slots 304 andthree extra slots 308. In some embodiments, the frame 300 is 33milliseconds (ms) long (+/−10, 5, or 3 ms). A person of skill in the artwill recognize variations depending on an application.

FIG. 3B shows an embodiment of time progression for multiple frames 300.Time progresses from a first time slot (S1) of a first frame 300-1 to alast time slot of the first frame 300-1 (in this example to time slot 11(S11)). Time then progresses from the last time slot of the first frame300-1 (e.g., S11) to the first time slot (S1) of a second frame 300-2;then from the first time slot (S1) of the second frame 300-2 to the lasttime slot of the second frame 300-2; then from second frame 300-2 to thea third frame 300-3; and from the third frame 300-3 to a fourth frame300-4 and so on.

In an example using the four radios 104 of FIG. 1, the first radio 104-1transmits voice data during the first slot (S1) of each frame 300 (e.g.,during S1 of 300-1, 300-2, 300-3, 300-4, and so on). The second radio104-2 transmits voice data during the second slot (S2) of each frame300. The third radio 104-3 transmits voice data during the third slot(S3) of each frame 300. The fourth radio 104-4 transmits voice dataduring the fourth slot (S4) of each frame 300. If there are no more thanfour radios 104 assigned time slots, then, in some embodiments, no voicedata is transmitted during time slots not assigned (e.g., S5, S6, S7,S8, S9, S10, and S11). In some embodiments, the last time slot (e.g.,S11) is designated an extra slot 308 and voice data would not betransmitted during the extra slot 308 anyway.

Multi-Frame Hopping

Radios 104 transmitting during time slots of a frame 300 is an exampleof radios 104 taking turns, or “hopping,” in a first dimension. Radios104 can also take turns transmitting during the extra slot 308 (or extraslots 308). Radios 104 taking turns transmitting during the extra slot308 is an example of radios 104 taking turns, or hopping, in a seconddimension. An example why radios 104 would hop in the second dimensionis to transmit non-voice data. For example, in a tactical setting,heartrate data of a user of a radio 104 is transmitted during the extraslot 308. A higher heartrate suggests increased stress and/or exertion.No heartrate suggests the user is potentially missing in action (e.g.,killed or the radio 104 is removed from the user). Other non-voice data,such as GPS data of the radio 104, could also be of use.

Referring next to FIG. 3C, is simplified diagram of an embodimentmultiple frames 300 are shown with radios 104 assigned to transmitduring various time slots. For simplicity, the first radio 104-1 isabbreviated R1, the second radio 104-2 is abbreviated as R2, the thirdradio 104-3 is abbreviated as R3, and so on up to a sixth radioabbreviated as R6. In FIG. 3C, an embodiment of a TDMA protocol havingsix voice slots 304 and one extra slot 308 is shown. Time slots areshown horizontally and frames 300, from the first frame 300-1 to atwentieth frame 300-20, are listed vertically.

During the first voice slot 304-1, the first radio 304-1 (R1) transmitsfor each frame 300; during the second voice slot 304-2, the second radio304-2 (R21) transmits for each frame 300; and so on through a sixthvoice slot 304-6 where the sixth radio (R6) transmits for each frame300. During the extra slot 308, however, radios 104 take turnstransmitting. In the first frame 300-1, the first radio 304-1 (R1)transmits during the extra slot 308. In the second frame 300-2, thesecond radio 304-2 (R2) transmits during the extra slot 308. Similarly,the third radio 104-3 (R3) transmits during the extra slot 308 of thethird frame 300-3 and so forth until the sixth radio (R6) transmittingduring the extra slot 308 of the sixth frame 300-6.

The extra slot 308 during a seventh frame 300-7, an eighth frame 300-8,and a ninth frame 300-9 are reserved slots 310 for transmission duringthe extra slot 308. In the seventh frame 300-7 there is a first reservedslot 310-1 (RS1). In the eighth frame 300-8 there is a second reservedslot 310-2 (RS2). In the ninth frame 300-9 there is a third reservedslot 310-3 (RS3). The reserved slots 310 use a further rotation tocreate a third dimension of “hopping” or taking turns between radios. Insome embodiments, the third dimension of hopping is used for passingdata between wireless-conferencing groups. In one example, master radiosof each group take turns transmitting during the reserved slots 310. Inanother example, not mutually exclusive with the example just given, isthat a radio 104 that is not assigned a voice slot 304 can transmitnon-voice data during a reserved slot 310 (e.g., radios using STTtechnology in a listen-only mode can still transmit non-voice data). Ascan be seen from a pattern, further dimensions of hopping can be createdby assigning slots for a rotation and then reserving one or more slotsfor a sub rotation.

Frames 300 are grouped into superframes 350. A superframe 350 is acollection of frames 300 where transmission on the extra slot 308repeats itself. In the embodiment in FIG. 3C, assignments to transmitduring the extra slot 308 repeat every nine frames. Thus the first frame300-1 through the ninth frame 300-9 are part of a first superframe350-1; a tenth frame 300-10 through an eighteenth frame 300-18 are partof a second superframe 350-2; a nineteenth frame 300-19 through atwenty-seventh frame are part of a third superframe 350-3; and so on.

In some embodiments, a radio 104 in a listen-only mode using STTtechnology is assigned a frame 300 to transmit during the extra slot308, similar to a radio 104 that is assigned a voice slot 304. Thus theradio 104 in listen-only mode could transmit non-voice data at leastonce during a superframe 350. Thus a superframe 350 could be 100 or moreframes long: there could be 90 frames for 90 radios 104 to transmitnon-voice data on and 10 frames for reserved slots 310; even thoughthere are only two to twelve voice slots 304 (sound quality degradesusing too many voice slots 304 during one frame 300; it is determinedthat between eight and eleven slots per frame 300 increases a number ofvoice slots 304 without too much sacrifice of quality). In someembodiments, more than one extra slot 308 is used per frame 300 toincrease data transmission. In some embodiments, if a voice slot 304 isnot assigned to a radio 104, the voice slot 304 is converted to an extraslot 308 (e.g., the master radio making that determination andtransmitting instruction to slave radios). Similarly, in someembodiments, an extra slots 308 can be converted to a voice slot 304 toenable more voice communication.

FIG. 3D gives an example of an embodiment of radios 104 transmittingduring reserved slots 310. This is an example of hopping in the thirddimension. In a wireless-conferencing system 100 having four differentwireless-conferencing groups there are four mater radios, a master radiofor each group. In FIG. 3D, a first master radio (M1) transmits duringthe first reserved slot 310-1; a second master radio (M2) transmitsduring the second reserved slot 310-2; a third master radio (M3)transmits during the third reserved slot 310-3; and fourth master radio(M4) transmits during the fourth reserved slot 310-4. This patterncontinues with the first master radio (M1) transmitting during the fifthreserved slot 310-5; the second master radio (M2) transmitting duringthe sixth reserved slot 310-6; the third master radio (M3) transmittingduring a seventh reserved slot 310-7; and so forth. An example to carryon the idea of further dimensions, instead of the first master radio(M1) transmitting during the fifth reserved slot 310-5, a place holderfor an additional slot is made for a fourth-dimension rotation, and thefirst master radio M1 transmits on the sixth reserved slot 310-6.

In some embodiments, the third dimension is used to assist in formingdata-handing in a mesh network. The wireless-conferencing system 100with two or more groups can be considered a mesh network. Thus if afourth group is far from a command center, but a first group is close(or the first group comprises a user at a command center), non-voicedata can be passed from the fourth master radio, to the third masterradio, to the second master radio, and then to the first master radio.Thus the fourth master radio can pass data to the first master radiowithout direct communication with the first master radio. In someembodiments, more than one radio 104 of a group transmits during thereserved slot 310. For example, all radios of a group could transmit thesame data at the same time during the fourth reserved slot 310-4. Thusif the fourth master radio was not within range of the third masterradio, perhaps a slave of the fourth master radio is within range of aradio in the third group, increasing chances that the third group willreceive data from the fourth group. In some embodiments, the seconddimension is used to pass data within a group and the third dimension isused to pass data between groups, or even between wire-less conferencingsystems.

In some embodiments, the wireless-conferencing system 100 uses frequencyhopping (not to be confused with hopping in the first dimension, seconddimension, and third dimension). For frequency hopping, some governmentagencies require radios to hop on a minimum number of frequencies andtransmit equally on the frequencies the radios hop between. For example,a government agency rule may stipulate: while transmitting at 900 MHz,at least fifty hopping frequencies must be used; at 2.4 GHz, at least 80hopping frequencies must be used. Additionally, a radio must transmitequally on each frequency.

The first dimension can comply with government regulation. Assuming anembodiment where there is not an extra slot 308, and only voice slotsare used 304, then radios 104 transmitting during the first frame 300-1transmit on a first frequency; radios 104 transmitting during the secondframe 300-1 transmit on a second frequency; and so on until cyclingthrough a given number of frequencies.

A challenge arises when introducing the extra slot 308 and rotatingtransmission assignments during the extra slot 308. For example, if anumber of radios 104 transmitting on the extra slot 308 has an integermultiple equal to an integer multiple (greater than 1) of the number offrequencies, then the radios 104 won't equally transmit on all thefrequencies.

FIG. 3E shows a simplified example of an embodiment of transmissionassignments and frequencies during the extra slot 308, wherein theradios 104 do not transmit equally on each frequency. In FIG. 3E, thefirst radio 104-1 (R1) and the second radio 104-2 (R2) alternatetransmitting during the extra slot 308 while hopping between sixdifferent frequencies. During the first frame 300-1, the first radio104-1 (R1) transmits at frequency 1 during the extra slot 308, the samefrequency as all radios transmitting during the first frame 300-1.During the second frame 300-2, the second radio 104-2 (R2) transmits atfrequency 2 during the extra slot 308, the same frequency as all radiostransmitting during the second frame 300-2. This cycle repeats over thesix frequencies. It is noted that the first radio 104-1 (R1) transmitson only odd frequencies and the second radio 104-2 (R2) transmits ononly even frequencies. Thus the first radio 104-1 (R1) does not transmitequally on all frequencies. And the second radio 104-2 (R2) does nottransmit equally on all frequencies. Thus the first radio 104-1 and thesecond radio 104-2 would not comply with government regulation requiringradios to transmit equally on each frequency.

In some embodiments (e.g., to comply with government regulation), anumber of frequencies to transmit on and/or how often to transmit ischosen in order to rotate transmissions equally per frequency during thesecond dimension (and/or the third dimension and/or more dimensions).Below are three options for determining how often radios are to transmiton the extra slot 308 of the second dimension.

Option 1—The first option is to transmit on a frame interval, whereinthe frame interval is a prime number and greater than a number of radios104 transmitting. The frame interval is how often (measured in frames300) a radio transmits during the extra slot 308. In some embodiments,the frame interval is equal a number of frames 300 in a superframe 350.In a simplified example, three radios 104 transmitting every 7 frames(frame interval=7, a prime number), and hopping between 15 frequencies,will equally transmit on all 15 frequencies for a given cycle. A cycleis how many frames a radio 104 will transmit during the extra slot 308on each frequency. In the example in this paragraph, the cycle is 105frames (number of frequencies=15; frame interval=7; cycle=15*7=105). Itis noted that if the frame interval is less than a number of radiostransmitting then a type of aliasing will occur where radios willtransmit more often (two radios trying to transmit on the extra slot 308during the same frame 300).

In some embodiments, if option 1 above is used, the frame interval isdynamically changed depending on a number of radios transmitting on theextra slot 308. Thus if three radios are alternating transmitting on theextra slot 308, the frame interval is set to 5; if 8 radios aretransmitting on the extra slot 308, the frame interval is set to 11.

Option 2—Select a prime number of frequencies to hop between that is notequal to the number of radios. One potential problem with option 1 aboveis if a system is built for many radios to transmit during the extraslot 308, and only a few radios are used, then the extra slot 308 is notbeing used as much as the extra slot 308 could be used for transmittingdata. For example, if the frame interval was chosen to be 29 so that 28or fewer radios could transmit data using the extra slot 308, and onlythree radios were being used, only 3 out of every 29 extra slots 308would be used (3/29=10% usage).

It is further noted that the number of frequencies can be less than thenumber of radios. Thus in some embodiments, a prime number offrequencies is used as a sufficient condition to ensure any number ofradios (except a number of radios equal to or a multiple of the primenumber of frequencies) can be added to transmitting during the extraslot 308. For example, if a minimum of 50 frequencies are required tohop between, then 53 frequencies (or 59, 61, 67, 71, 79, 83, etc.) arechosen (53 and the other numbers are prime numbers greater than theminimum number of frequencies). In some embodiments, the first, second,or third prime number after the minimum number of frequencies is chosenbecause having less hopping frequencies enables less precise filters tobe used when hopping. Thus if the first prime number after the minimumnumber of frequencies is chosen, then tolerances for filters would morelenient compared to the second prime number after the minimum number offrequencies. In some embodiments, if the number of radios equals thenumber of frequencies (e.g., 53 radios), then a null transmission isinserted (the null transmission being a frame when no radios transmitduring the extra slot 308; the null transmission takes a turn like aradio). The cycle for option 2 is calculated by the product of thenumber of radios and the number of frequencies.

Option 3—In some embodiments, null transmissions are used to keep thenumber of radios from having a common integer multiple of number ofhopping frequencies. For example, if 50 hopping frequencies are beingused, and eight radios are being used (common multiple of 2), then onenull transmission is inserted so that there are equivalently 9 “radios”transmitting on the extra slot. Since 9 and 50 don't have any commonmultiples greater than 1, there would be equal transmission on allfrequencies. Compare option 3 to dynamically changing option 1: inoption 1, for eight radios the frame interval would be 11 (the nexthighest prime number after the number of radios); in option 3, the frameinterval is 9, enabling more data transfer.

In some embodiments, a radio system, for establishing a mesh network,comprises: a first group of radios, wherein the first group of radioscomprises one or more radios; a first master, a second group of radios,wherein the second group of radios comprises one or more radios; and asecond master. The first master is a radio that is part of the firstgroup; the first master communicates with the first group of radiosusing a first TDMA-based protocol; the first TDMA-based protocolincludes a first set of transmission slots; and the first set oftransmission slots includes a first slot for transmitting data. Thesecond master is a radio that is part of the second group; the secondmaster communicates with the second group of radios using a secondTDMA-based protocol; the second TDMA-based protocol includes a secondset of transmission slots; and the second set of transmission slotsincludes a second slot for transmitting data. The first slot overlapsthe second slot in time and frequency forming a reserved slot. In someembodiments, the first TDMA-based protocol and the second TDMA-basedprotocol share the same frequency-hopping sequence, except the secondTDMA-based protocol is time offset the first TDMA-based protocol. Insome embodiments, the first master and the second master alternate(e.g., occur in turn repeatedly) transmitting during the reserved slot.In some embodiments, the reserved slot occurs once per superframe 350.In some embodiments, the reserved slot occurs multiple times persuperframe 350. In some embodiments, the first master and/or the secondmaster are configured to spend equal time on each frequency of a hopsequence (e.g., based on option 1, option 2, or option 3 above). Thefirst master (e.g., a master radio) is configured to perform one or moremaster functions. A master function can be one of set timing informationfor a group, assign voice slots 304, assign non-voice transmission times(e.g., during the extra slot 308), respond to a request from anotherradio to join the group, reassign time slots, etc. In some embodiments,a first hopping sequence of the first TDMA-based protocol and a secondhopping sequence of the second TDMA-based protocol do not overlap (intime and/or frequency) except during the reserved slot. In someembodiments, a slave radio of the first group and/or a slave radio ofthe second group alternate transmitting during the reserved slot. Insome embodiments, a third master from a third group alternatestransmitting during the reserved slot.

Data-Embedded Voice Communication

FIG. 4A shows an embodiment of a transmission during the voice slot 304compared to an embodiment of a transmission during the extra slot 308.The voice slot 304 has a preamble and voice data. The extra slot 308 hasa preamble and non-voice data. In some embodiments, the duration of thetransmission of the voice slot 304 is the same duration as thetransmission during the extra slot 308. In the embodiments show, theduration of the transmission of the extra slot 308 is shorter than theduration of the transmission of the voice slot 304.

FIG. 4B shows an embodiment of the preamble of the voice slot 304. FIG.4C shows an embodiment of the preamble of the extra slot 308. In someembodiments, the preamble of the voice slot 304 and/or the extra slot308 includes a time period for a frequency synthesizer to settle onto aprogrammed frequency (chirp time), a number of clock recovery bits(clock recovery), a string of start bits (start string), a command wordor words (command), and/or a compliment of the command word(s) (commandcompliment). In some embodiments, the preamble of the voice slot 304and/or the extra slot 308 includes a group number and/or a group numbercompliment. In some embodiments, a room number and/or a room numbercompliment is also included. The group number and/or room number provideinformation for a receiving radio to include or exclude data. Forexample, voice data from a radio 104 in a different group from a radio104 receiving a transmission is not summed and sent to the speaker 61 ofthe radio 104 receiving the transmission if the radio 104 transmittingis in a different group, and in some embodiments in a different room.

The chirp time can vary based on a type of transceiver 108 used. In someembodiments, a frequency-hopping, spread-spectrum technique is used. Afrequency-hopping, spread-spectrum technique type system generally usesa fractional-n frequency synthesizer to shorten chirp time. In someembodiments, chirp time can be very short (e.g., equal to or less than100, 75, 50, and/or 30 microseconds).

In some embodiments, clock recovery bits are a string of ones and zeros.A length of the string is dependent on a technique used to recover theclock and an accuracy need. Clock recovery may also be done using aspecial string of bits that makes up a code that is run through aparallel correlator to synchronize the clock with data. In someembodiments, shorter codes or strings of ones and zeros can be used forclock recovery when timing information is stored between transmissions.In some embodiments, timing information is saved between transmissionsso that clock recovery is not needed or reduced. For example, the masterradio and/or one or more slaves provide clock recovery information, suchas phase information. Clock recovery information is saved so that when alater transmission is sent, phase information from a previous clock isused so that a full clock recover is not required (and sometimes smalladjustments may need to be made due to crystal drift).

FIG. 4D shows a simplified an embodiment of non-voice data transmissionduring the extra slot 308. The non-voice data comprises an address,heartrate, blood pressure, GPS data, gyroscope data, and/or sensor data.The address identifies the radio 104 transmitting the non-voice data. Insome embodiments, the address is part of a preamble.

In some embodiments, the command (e.g., a string of bits) is sentidentifying data that will follow as voice data or non-voice data. Insome embodiments, the command is at or near the beginning of atransmission (e.g., as part of the preamble). In some embodiments, thecommand is the only part of the preamble. In some embodiments, more thanone command is used (e.g., a first command to identify a type of dataand second command to provide an instruction; or a first command at thebeginning of the transmission identifying non-voice data and a commandembedded in the communication to identify voice data). Examples ofcommands include an indication of what follows is voice data, non-voicedata, particular type of data (e.g., health data such as heartrate dataor GPS data), and/or specific file data (e.g., in frame 1: picture A,tile 1; in frame 2: picture A, tile 2, etc. so that a picture could besent over multiple frames 300). In some embodiments, using a command toidentify a type of data enables a wireless-conferencing group to senddata during unused slots. For example, if a frame 300 has ten voiceslots 304 and one extra slot 308, but only six radios are using voiceslots 304 to transmit on, then four slots are available for non-voicedata. A radio 104 receiving data interprets the command to determine ifdata in the transmission is to be summed and sent to the speaker 61.Some or all voice data is summed and sent to the speaker. Non-voice datais not summed so that the non-voice data is not sent to the speaker 61.In some embodiments, a command also includes an address for one or morespecific radios to receive data. Radios besides the specific radio(s)ignore data. In some embodiments, non-voice data is prioritized abovevoice data so that the non-voice data is sent instead of voice data(e.g., certain biomedical data that could be time critical such asheartrate dropping to zero).

In some embodiments, both voice data and non-voice data are sent duringone time slot. In some embodiments, the command instructs receivers thata first number of bits/bytes is voice data and a second number ofbits/bytes is non-voice data (the voice data and non-voice data beingseparate). In some embodiments, non-voice data is interspersed in voicedata. For example, every fourteenth bit is non-voice data. An amount ofnon-voice data interspersed in the voice data can be determined bykeeping enough bits of voice data to meet the Nyquist rate. In someembodiments, non-voice data is added with voice to a threshold where thevoice data can still be understood.

In some embodiments, data that changes above a threshold is sent, butdata changes below a threshold are not sent. For example, a militaryunit using a wireless-conferencing system 100 acquires heartrate data onsoldiers using radios 104. A heartrate in a range from 55-120 beats perminute is not sent (or sent at a less frequent rate, e.g., every 10seconds or every minute). But if the heart rate of a soldier drops below55 beats per minute, or exceeds 120 beats per minute, heartrate data ofthe soldier is sent by priority. If heartrate data changes dramatically(e.g., drops below or exceeds a second threshold, e.g., 20 beats perminute) then the heartrate data is prioritized and sent higher prioritythan voice data.

In some embodiments, data is combined at mesh points for a mesh network.For example, a master radio in a first group is a mesh point andcombines non-voice data from radios in the first group. The master radioin the first group then sends combined non-voice data (and/ordifferences in the non-voice data, compared to previous transmission(s))to another radio in the mesh network.

In some embodiments, a transmission sequence comprises of sending clockrecovery data, sending a preamble, which may include a start word,address information, group number information, command information,etc., and then sending a data packet of voice data and/or non-voicedata. In some embodiments, clock recovery is not needed. The command canbe used for sending acknowledge-type signals, bad RF channelinformation, pushed button information, etc. A string of data bytescomprising various kinds of digital data is also included in atransmission. The various kinds of data can include modem data,digitized voice, caller-identification data, video data, and/or othertypes of data.

Addresses can be used instead of group numbers and/or in addition togroup in some embodiments. When addresses are used instead of groupnumbers, the addresses of radios 104 that can communicate in aconference-like manner are held in a buffer.

After a master radio (e.g., the first radio 104-1) transmits during thefirst voice slot 304-1 (S1), the master radio waits to receive atransmission from another radio 104 to request to be added in duringlater slots S2, S3, S4, etc. Included in the transmission from themaster radio is a command requesting a slave unit to occupy a particularempty time slot if a slave is available. When a radio 104 that is insearch-for-master mode receives the request to add into a particulartime slot from the master, the radio 104 that is in search-for-mastermode transmits a data packet back to the master radio (and to the otherradios in the wireless-conferencing system 100) requesting the masterradio to add the radio 104 that is in search-for-master mode into theopen time slot. The transmission from the radio 104 requesting to beadded to the open time slot occurs during the open time slot. Requestsare acknowledged only from radios 104 having the same group numberand/or an appropriate address. The command in transmission of a slaveradio conveys to the master radio which slot the slave wants to add intoand informs the master radio an address of the slave radio making therequest. In some embodiments, the command can be used to tell otherradios what kind of data is contained in the data packet such ascaller-identification data or modem-type data.

In some embodiments, the group number is sent in every transmission(e.g., in each preamble) and address information from a slave to themaster is sent as part of the voice-data packet, thus some voiceinformation is not sent because the address information of the slave isoccupying some of voice-data packet space.

In some embodiments, each radio 104 is identified by an address. Themaster radio receives the address of a slave requesting a voice slot 304(and/or an extra slot 308 assignment). Since the master radio has theaddress of the slave that has requested the voice slot 304, the masterradio can send an acknowledgment command back to each radio with anaddress of a radio 104 assigned to the voice slot 304. Using addressavoids two radios 104 being assigned the same voice slot 304. In someembodiments, the master radio sends the address that is beingacknowledged in part of voice data. After a slave radio receives a slotassignment(s) from the master radio, the slave radio transmits dataduring the assigned slot assignment(s). In some embodiments, the groupnumber is not used and addresses are used to determine if a slave radiois to be added into a time slot. Radios 104 are assigned a particularvoice 304 slot in which to transmit. If all the voice slots 304 arefull, the master radio sends a different command so that a slave radiodoes not keep requesting a voice slot 304 assignment. In someembodiments, if all the voice slots 304 have been assigned (are full), aslave radio enters a listen-only mode (if the slave radio has a validgroup number and/or address).

In some embodiments, slave radios are set to have no capability totransmit and thus cannot become a master radio. However, slave radiosthat do not transmit can receive data sent by the master radio and/orother slave radios.

In some embodiments, the master radio does not assign certain radios toan open voice slot 304 and/or receiving and using transmitted databecause each radio has a unique address (e.g., globally unique or uniqueper group). For example, the master radio maintains a list of addressesin memory (e.g., buffer) that are to be blocked from joining and/ortransmitting a wireless-conferencing system 100 and/or group. The masterradio can also have private communications with one or more other radiosby allowing only radios with specific addresses to add into open timeslots or listen to a transmission.

In some embodiments, multiple group numbers can be programmed into aradio. A master radio assigns a time slot to a slave radio that has agroup number matching one of the multiple group numbers programmed intothe master radio. As radios 104 switch to different group numbers, theradios 104 can have private conversations with other radios 104 using acommon same group number while using time slots assigned a common masterradio. A private communication path can be programmed to keep privatenon-voice data as well. Otherwise, non-voice data is shared with allradios or some of the group numbers programmed into radios 104.

In some embodiments, non-voice data is sent during a voice slot 304. Insome embodiments, during the extra slot 308, a radio 104 will listen toa frequency of another group (e.g., move to a different frequency than afrequency of the frame 300). For example, the master radio of a firstgroup could switch to the different frequency to see if a second groupwas transmitting in the area. If a second group (e.g., with differentgroup number) is in the area using a different master, then based on thesecond group transmitting during the extra slot 308 at the differentfrequency, the master radio of the first group can adjust timing of thefirst group to match timing of the second group.

In some embodiments, the first radio 104-1 has a master flag. After thefirst radio 104-1 turns on, the first radio 104-1 searches for otherradios 104 transmitting on a first frequency. If the first radio 104-1receives a transmission from another radio 104, and the another radio104 is using a different group number than the first radio 104-1, thenthe first radio 104-1 will go to a second frequency (e.g., just above orbelow the first frequency). Then the first radio 104-1 will search forradios 104 transmitting on the second frequency. The first radio 104-1repeats the process until the first radio 104-1 finds a frequency (e.g.,a channel) that is not being used by another group. The first radio104-1 will then occupy that frequency in time synchronization with theother master radios or systems in the area. In some embodiments, anotherradio is considered “in the area” if the first radio 104-1 receives asignal from the another radio above a threshold power. Timesynchronization between groups can be maintained by monitoring the extraslot 308 and adjusting timing accordingly as other systems transmitinformation during the extra slot 308.

The extra slot 308 can contain synchronization information, globalpositioning satellite (GPS) data, biomedical sensor data, sensor dataobtained from nearby sensors, gyroscope data, etc. When or if voiceslots 304 are not being used to transmit voice data, the voice slots 304can be used to transmit non-voice data and can be assigned to transmitonly non-voice data. In some embodiments, when time slots are set up totransmit non-voice data, the time slots can be subdivided into smallertime slots so that multiple radios can transmit data during the timeslot.

In some embodiments, GPS-timing data can be used to keep multiple systemin synchronization. A first master to be turned on in an area will takeup the first time spot associated with the GPS timing data. Othermasters will take up different time slots associated with the GPS timingdata taking into account an amount of time used by a number of timeslots and duration of time slots for each frame.

In some embodiments, a radio 104 is assigned an extra slot 308, a partof the extra slot 308, a voice slot 304, and/or a portion of a voiceslot 304 for sending non-voice data. Timing can be based on the masterradio sending data on the extra slot 308; the master radio sending dataon a voice slot 304; or when a radio 104 transmits non-voice data duringa voice slot 304. In some embodiments, a first slave radio is assignedthe second voice slot 304-2. Carrier sense multiple access techniquesmay also be used for sending non-voice data during voice slot(s) 304and/or extra slot(s) 308.

In some embodiments, extra slots 308 may be unused. For example, in anembodiment having ten voice slots 304, ten radios 104 use up all the tenvoice slots 304. In some embodiments, each radio 104 takes a turntransmitting on the extra slot 308. If each of the ten radios 104 cansend all non-voice data between the ten radios 104, then only ten frames300 of the extra slot 308 are used to send non-voice data between theten radios 104. Assuming each frame is 15 milliseconds, the non-voicedata will be exchange in 150 milliseconds. If the non-voice data onlychanges, or needs to be exchange, every 1.5 seconds (or from 1 sec to 5seconds), then 90 frames 300 are available for other types of data orother radios 104 (e.g., in listen-only mode) to exchange data with theten radios 104 assigned voice slots 304. Thus 90 radios 104 that are nottransmitting voice data can exchange non-voice data in a wirelessconferencing group. In some embodiments, when an extra slots 308 is notbeing used, a slave radio that does not occupy one of the ten voiceslots 304 can transmit and ask for a particular extra slot 308 (e.g.,request one extra slot 308 in a superframe 350) from the master radio(e.g., in a same manner as a radio 104 requests a voice slot 304). Ifmore non-voice data is to be sent from a radio 104, then the radio 104may request more than one extra slot 308 (e.g., more than one extra slot308 per superframe 350) to send data. Thus many radios 104 (e.g., 9-120,or more) can be part of a wireless-conferencing group exchanging data.

In some embodiments, the master radio uses the extra slot 308 to assignslots to radios 104. In some embodiments, the master radio uses apreamble and/or a command section of a slot to transmit voice data(e.g., during the first voice slot 304-1, which the master radio isassigned to transmit during) to give a radio in listen-only mode acommand (e.g., to take a voice slot 304). When a slave radio sends arequest for an extra slot 308 assignment, the slave radio also sends anaddress of the slave radio. After the slave radio requests the extraslot 308 assignment from the master radio, the master radio sends anacknowledgment command with the address of the slave radio thatrequested the extra time slot 308 assignment. The acknowledgment commandis sent during the extra slot 308 assignment of the master radio. Theslave radio transmits non-voice data during the assigned extra slot 308.

Encryption and decryption of data can be used by the radios 104 toimprove security Encryption can be used on an entire transmission, partof a transmission, and/or a type of data. For example, in someembodiments only voice data is encrypted and preambles are notencrypted. In some embodiments, voice data and non-voice data areencrypted but preambles are not encrypted. In some embodiments,preambles are not encrypted to make cracking the encryption harder. Forexample, if preambles are encrypted and preambles are predictable, thencracking the encryption becomes easier. In some embodiments, oneencryption is used for voice data and a second encryption is used fornon-voice data (voice data is harder to crack and so even if thenon-voice data gets compromised, the voice data would still be secure).

In some embodiments, frequency hopping is combined with encryption. Insome embodiments, there is encryption without frequency hopping. In someembodiments, encryption is set at a factory (a hard set). Keys forencryption can be passed in different ways. In some embodiments, keysare passed at start up and/or during configuration sharing (e.g., a keybeing a parameter or group characteristic). In some embodiments, radiosmust be within a short distance (e.g., equal to or less than 5 m, 4 m,or 3 m) of each other to pass keys. In some embodiments, keys are passedusing radio frequency, Bluetooth, or a near-field communication. In someembodiments, a physical cable is used to pass keys between radios. Insome embodiments, keys are passed over the Internet (e.g., using amobile app). In some embodiments, a set of two or more radios start witha key that is the same for the set of radios. As a radio syncs withother radios (e.g., joins a group) the key for that radio is modified.

In some embodiments, data is not encrypted, or preambles or portions ofpreambles are not encrypted (and other data is encrypted) so that groupscan sense each other. In some embodiments, data in voice slots 304 areencrypted but data in extra slots 308 is not. Not encrypting some dataallows radios to more easily join a group. Not encrypting data alsofacilitates groups to set time offsets to interfere less with each other(e.g., multiple groups hopping at the same time between frequencies withan offset). In some embodiments, if an encryption key for a groupbecomes compromised (or potentially compromised, such as a radiobecoming lost), only radios of that group need to be re synced.

When a time slot has no radios assigned to transmit data, radios 104 usetimers to estimate slot durations. This allows radios 104 to stay insynchronization even though a slot is not being used. Sensor data 116and voice data 112 are passed to transceivers 108 to transmit to otherradios 104.

In some embodiments, several different timers are used. Timers and bitcounters are located in ASIC 58. Bit counters and timers may be locatedin the microprocessor 57. A first timer is used to delay turning on apower amplifier to allow a frequency synthesizer to get to a certainfrequency. After the frequency synthesizer gets to the certainfrequency, the power amplifier turns on. Another timer or bit counterturns on a clock recovery bit output. The clock recovery bit output maybe a one/zero sequence, in some embodiments, and/or a pseudo randomcode. Clock recovery bits are sent for a specified time and/or aspecified number of bits. A radio 104 receiving clock recovery bits hasanother timer that sets up a start time to look for clock recovery bitsand a stop time to quit looking for clock recovery bits. There is also atimer in the radio 104 receiving data to indicate when a slot has timedout after no clock recovery bits are identified. After clock recoverybits are transmitted, a start word is transmitted. Timers are set toverify the start word is found with a specified time window. The startword is an identifier and not necessarily an actual word (e.g., usingletters, numbers, and/or symbols). If the start word is not found withinthe specified time window, then a timer is used to determine where anend of a time slot is so a new time slot can be started. If the startword is found, bit counters are started for bringing in the rest of thedata being transmitted. After a correct number of bits are received,timers are reset to start another sequence.

In some embodiments, one or more timers are reloaded with different timedurations to allow for different clock recovery times and/or differentdata-packet lengths. Timing devices are used to keep radios 104 insynchronization. Timers may be of different duration depending on timeslot durations.

A radio 104 going out of range of other radios 104 can cause errors inthe group number, the command byte, and/or the start word. In someembodiments, the group number, the command byte, and/or the start wordeach have a bit error detector that is programmable as to how many biterrors will be allowed and still be accepted. If the start word has toomany errors, no data will come through and a data buffer is filled witha data sequence that creates a constant voltage or set pattern ofinformation out of the appropriate decoder. If either the group numberor the command byte is good, the data bytes may be accepted. In someembodiments, both the group number and the command byte are correctedbefore a radio 104 is added into a group and/or a wireless-conferencingsystem 100. A master radio may drop a first slave radio from a time slotif the master radio receives too many bad packets in a row and/or in agiven duration. The master radio may then send a command to request asecond slave radio to transmit during the time slot the first slaveradio was transmitting. The command to request the second slave radio totransmit during the time slot of the first slave radio indicates to thefirst slave radio that the first slave radio was dropped and to requesta time slot. In some embodiments, a counter is used in microprocessor 57to determine if too many bad packets have been received; the counter isreset after a good packet of data is received.

In some embodiments, other error-detection techniques are be used.Error-detection techniques can be used for an entire data packet insteadof just the address and/or the command to determine if a poor datapacket was received. Error correction codes can be used to correct biterrors in data packets if bit errors exceeding a threshold value werereceived. Using error correction codes can help reduce bad packets ofdata and keep radios 104 in synchronization.

In some embodiments, a first time a radio 104 requests a voice slot 304assignment from a mater radio, the first bytes of the voice data includean address of the radio 104 requesting the voice slot 304 assignment.When the master radio sends an acknowledgment signal that tells a slaveradio to take a particular slot, the master radio also sends the addressof the slave radio that is to take the time slot (e.g., in the firstbytes of the voice data transmitted by the master radio).

In some embodiments, higher data rates are used for certain radios. Insome embodiments, to provide higher data rates, a radio 104 is assignedmore than one voice slot 304 and/or extra slot 308. In some embodiments,if multiple time slots that are assigned to a radio 104 are consecutive,then only the first time slot in consecutive time slot used by the radio104 has a clock recover string, a start word, an address, group number,and/or a command.

In some embodiments, data is transmitted during voice slots 304 if extravoice slots 304 are available. In some embodiments, the extra slot 308is used to send and receive data from radios in other groups and/orsystems. In some embodiments, memory holds sensor information so thatchanges can be determined (e.g., transmitter, reception quality, etc.).In some embodiments, one or more radios are designated as a listen-onlyradio, meaning that the listen-only radio does not transmit voice databut the one or more radios designated as a listen-only radio areassigned time frames to transmit non-voice data during the extra slot308. In some embodiments, a master radio send data (e.g., command) toradios in listen-only mode during a frame 100 of the extra slot 308 solisten-only radios know when to transmit. In some embodiments,biomedical, location (e.g., GPS, accelerometer, and/or gyroscope), iscollected and sent by radios using non-voice data slots. In someembodiments, data is encrypted. In some embodiments, radios areprioritized for sending data and/or being assigned a slot.

FIG. 5 illustrates a flowchart of an embodiment of a process 500 forreceiving both voice data and non-voice data in a wireless-conferencingsystem 100. The process 500 begins in step 504 where a radio receives afirst data packet, a second data packet, and a third data packet. Eachdata packet has a preamble and a body (e.g., the body is labeled voicedata and non-voice data in FIG. 4A). In step 508, the radio analyzespreambles of the data packets to identify if what follows a preamble isvoice data and/or non-voice data. In step 512, voice data is combinedand sent toward a speaker 61 (in some embodiments, combined voice datais further modified before actually getting to the speaker 61).Non-voice data is excluded from being combined with the voice data(e.g., non-voice data is stored separately from voice data).

In some embodiments, a method for receiving both voice data andnon-voice data in a wireless-conferencing system comprises receiving afirst data packet, wherein the first data packet comprises a firstpreamble and a first body; identifying a code in the first preambleidentifying data in the first body as voice data; receive a second datapacket, wherein the second data packet comprises a second preamble and asecond body; identifying a code in the second preamble identifying datain the second body as voice data; receiving a third data packet, whereinthe third data packet comprises a third preamble and a third body;identifying a code in the third preamble identifying data in the thirdbody as non-voice data; combining the voice data in the first body withthe voice data in a second body, based on the first preamble identifythe first body as voice data and the second preamble identifying thesecond body as voice data, to create combined voice data; and excludingthe third body from being combined with the first body and the secondbody based on the third preamble identifying the third body as non-voicedata.

In some embodiments, non-voice data and voice data are sent together ina body. The preamble can provide instructions which bits are voice dataand which bits are non-voice data (e.g., every 50 bits of voice datathere are 5 bits of non-voice data; or the first x number of bits arevoice data and the remaining bits are non-voice data). Thus in someembodiments, a method for receiving both voice data and non-voice datain a wireless-conferencing system comprises receiving a first datapacket, wherein the first data packet comprises a first preamble and afirst body; identifying a first code in the first preamble identifyingvoice data in the first body; identify a second code in the firstpreamble identifying non-voice data in the first body; receiving asecond data packet, wherein the second data packet comprises a secondpreamble and a second body; identifying a code in the second preambleidentifying voice data in the second body; and combining the voice datafrom the first body with voice data from the second body, excluding thenon-voice data from the first body. By sending non-voice data with voicedata, more non-voice data can be sent.

In some embodiments, the combined voice data is sent toward a speaker.In some embodiments, the third packet is sent during a voice slot of aframe of a TDMA system. In some embodiments, the first data packet, thesecond data packet, and the third data packet are received within oneframe of a TDMA system. In some embodiments, the first packet istransmitted by a first radio and the second packet is transmitted by asecond radio. In some embodiments, the third packet is transmitted bythe second radio. In some embodiments, the third packet is transmittedby a third radio, different from the first radio and the second radio.In some embodiments, radios transmit data using a multiple-accessprotocol, and optionally, the multiple-access protocol is TDMA. In someembodiments, the second code of the first preamble is the same as thefirst code of the first preamble. In some embodiments, the secondpreamble also identifies non-voice data in the second body, and thenon-voice data is excluded from being combined with voice data from thefirst body.

Switch-to-Talk (STT) Priority

In some embodiments, a radio 104 not assigned to a voice slot 304 canrequest a voice slot 304, from the master radio, through the extra slot308. This allows a higher-priority radio an ability to have the masterradio revoke a voice slot 304 assignment from a lower-priority radio forthe higher-priority radio. In some embodiments, the lower-priority radiogives up a voice slot 304 assignment without the master radiointervening by the lower-priority radio receiving the request for thevoice slot 304 by the higher-priority radio. In some embodiments,priority information is embedded in an address of a radio 104, sent inaddition to the address of the radio 104, and/or be programmed the radio104 and other radios as part of a database.

In some embodiments, some non-voice data is sent only when there arechanges to the non-voice data. Each radio 104 collects non-voice dataand stores the non-voice data in memory to be transmitted during anassigned time slot. The non-voice data is transmitted during theassigned time slot and a flag is set showing that the non-voice data hasbeen transmitted. As more data is collected, newer data is compared tonon-voice data flagged as transmitted. If the newer data is different,or has enough difference that exceeds a threshold, than flaggednon-voice data, then the flag is cleared so that the newer data will betransmitted. In cases where different types of data are collected by aradio 104, then each type of data has its own memory location and flagto indicate whether or not to transmit. In some embodiments, a radio asa mesh point (e.g., a master radio) combines non-voice data fortransmitting to other nodes in the mesh network.

In some embodiments, a priority scheme is implemented to transmit data.For example, an assigned transmission slot might be too short totransmit the non-voice data. Types of data and/or radios 104 areprioritized. Higher priority data, and/or data from higher-priorityradios, is transmitter sooner. Lower-priority data, and/or data fromlower-priority radios, is sent later.

In some embodiments, not all slave radios are assigned a voice slot 304,even if voice slots 304 are available. For example, in an embodimentwith ten voice slots 304, three slave radios are assigned voice slots304. The master radio transmits during the first voice slot 304-1, andthe three slave radios transmit during the second voice slot 304-2, thethird voice slot 304-3, and the fourth voice slot 304-4. This leavesfive voice slots 304 unused. Yet many other radios 104 (theoretically anunlimited number) can be in listen-only mode using STT (e.g., equal toand greater than 0, 1, 5, 10, and equal to or less than 15, 20, 50, 100,150, 250, 500, 1000, 10000, 50000, 500000, 2 million, or more (e.g.,limited by how many radios there configured to receive a transmissionand/or are within a range of a transmitting radio)). For example, at afootball stadium, fans of one team could join, as listen-only, to afirst group; and fans of a second team could join a second group, aslisten-only. In another example, at an Olympic event, speakers of afirst language could join a first group, in listen-only mode, to hearannouncements in the first language; and speakers of a second languagecould join a second group, in listen-only mode, to hear announcements ina second language. In some embodiments, one or more chips are installedin a mobile device (e.g., a mobile phone), to enable the mobile deviceto function as a radio 104. Thus a user of the mobile device (e.g., afan at a sporting event or spectator at the Olympics) could use themobile device (e.g., though a mobile app) to receive transmissionsdirectly from a radio 104 in that group (e.g., not going through a celltower). In some embodiments, group numbers are used to join an opengroup. In some embodiments of an open group, slave radios do not requesta transmit slot, even to join, but can enter listen-only withoutacknowledgement by the master radio of that group. Thus a slave radioattempting to join an open group, waits to receive a transmission from aradio 104 (e.g., a master radio) with the group number of the open group(e.g., in a preamble during a voice slot 304 that has a group numbercorresponding to the group number the slave radio seeks to join). Theslave radio then joins the open group by setting timing with the opengroup. In some embodiments, the slave radio receives the group numberand/or parameters of the open group over the internet (e.g., through amobile app). In some embodiments, radios 104 in a listen-only modecannot switch to transmit mode in certain groups.

In some embodiments, a radio 104 in listen-only mode can request a voiceslot 304 assignment by activating a STT switch (e.g., as discussed inthe '663 application). If all voice slots 304 are already assignedand/or in use, the radio 104 remains in listen-only mode until a voiceslot 304 becomes available. In some embodiments, the STT switch isactivate by a voice command. In some embodiments, a the radio 104 emitsa tone from the speaker 61 after the radio 104 is assigned a voice slot304 to indicate to a user of the radio 104 the radio 104 is transmittingvoice data. Likewise, if the radio 104 switches from transmitting voicedata to not transmitting voice data, a tone is sent to the speaker 61.

FIG. 6 illustrates a flowchart of an embodiment of a process 600 forassigning a radio a voice slot, after voice slots are already assigned.The process 600 begins in step 604 where a master radio receives arequest from a first radio (e.g., a slave radio in a listen-only mode.In step 608, a determination is made (e.g., by the master radio) thatthere are no vacant voice slots (e.g., all voice slots 304 have beenassigned). In step 612, the first radio is compared to the second radiofor priority. In some embodiments, priorities of all radios assigned tovoice slots are compared and the second radio has the lowest priority(and/or the highest numbered voice slot). In some embodiments, radiosare assigned voice slot numbers based on priority. For example, thehighest priority radio is given the first voice slot 304-1 (e.g., masterradio, but not necessarily); the next highest priority radio is assignedthe second voice slot 304-2, etc. In some embodiments, a parameter ofthe first radio and the second radio are compared. The second radio isassigned a voice slot to transmit on. In step 616, the master radiodetermines that the first radio has a higher priority than the secondradio. And in step 620, the master radio transmits a command for thefirst radio to transmit during the voice slot that the second radio wasassigned. The second radio also receives the command from the masterradio and so the second radio switches to listen-only mode. A similarprocess can be used for reassigning other time slots, such asassignments to transmit during the extra slot 308. In some embodiments,the second radio then requests a voice slot, after losing the voice slotto the first radio. The master radio may determine that the second radiohas a higher priority than a third radio and assign the second radio thevoice slot of the third radio. In some embodiments, the first radio isthe master radio. In some embodiments, the master radio determines thatthe first radio does not have a higher priority and transmits a commandfor the first radio to wait a predetermined time before requestingagain. In some embodiments, queue of radios requesting a voice slot ismaintained. As radios assigned to voice slots give up voice slots (e.g.,a user switches a radio assigned a voice slot to listen-only mode)and/or time out (e.g., no recognizable speech in voice data transmittedby a radio for more than 90 frames and/or 30 seconds, one minute, twominutes, three minutes, or five minutes), radios in the queue areassigned voice slots to transmit on. In some embodiments, radios in thequeue are prioritized (e.g., by a combination of a parameter and a waittime).

In some embodiments, a method (e.g., by a master radio) for assigning aradio a voice slot, after voice slots are already assigned comprises:receiving a request from a first radio for an assignment to a voiceslot, wherein the first radio is not assigned a voice slot and the firstradio receives voice data from other radios; determining that there areno vacant voice slots to assign the first radio to; comparing a firstparameter of the first radio to a second parameter of a second radio,wherein the second radio is assigned a voice slot; determining that thefirst radio is higher priority than the second radio based on comparingthe first parameter to the second parameter; and assigning the voiceslot of the second radio to the first radio based on determining thatthe first radio is of higher priority than the second radio.

Multi-Channel Listen

In some embodiments, a wireless-conferencing group can be furtherdivided into rooms. In some embodiments, a group profile includesinformation about one or rooms. A radio 104 in a room sums voice datafrom only other radios 104 that are identified as being part of theroom. For example, room identification of a radio can be part of apreamble.

FIG. 7 depicts an embodiment of a wireless-conferencing group 700 havingthree rooms: a first room 704-1, a second room 704-2, and a third room704-3. Radios 104 that are part of the first room 704-1, the second room704-2, and the third room 704-3 are synced and have the same hopsequence, same timing, and the same master radio. Rooms 704 determinehow voice data is summed and sent to the speaker 61. In someembodiments, a radio 104 can be part of more than one room. In someembodiments, radios 104 can toggle between rooms (e.g., by pressing abutton or selecting an icon).

For example, in some embodiments the first radio 104-1 and the secondradio 104-2 are part of room 1 and the third radio 104-3 and the fourthradio 104-4 are part of room 2. The third radio 104-3 receives voicedata from the first radio 104-1, the second radio 104-2, and the fourthradio 104-4. But voice data from the first radio 104-1 and voice datafrom the second radio 104-2 are not combined and sent to the speaker 61of the third radio 104-3 because the first radio 104-1 and the secondradio 104-2 are not in the same room 704 as the third radio 104-3.Similarly, a user of the second radio 104-2 does not hear what a user ofthe third radio 104-3 and a user of the fourth radio 104-4 are saying.

In some embodiments, a radio 104 is part of more than one room 704. Forexample, the first radio 104-1 (the master radio of the group 700) ispart of the first room 704-1, the second room 704-2, and the third room704-3. Thus the first radio 104-1 combines voice data from all radios104 of the group 700 and all radios 104 of the group 700 sum voice datafrom the first radio 104-1 (e.g., all users with radios 104 can hearwhat a user with the first radio 104-1 is saying).

In some embodiments, rooms 704 bring in voice data of radios 104assigned to other rooms 704. In some embodiments, radios are configuredto be part of only certain rooms. For example, in backing up and ortaxing commercial and military airplanes, sometimes wing-walkers areused to help a pilot not hit a wing of an aircraft on another object.The wing walkers walk near or at the wingtips of the aircraft. As longas the wing is not in danger of hitting another object, the wing walkergives a thumbs-up or some other sign. A lead mechanic watches the wingwalkers and gives instructions to the pilot. In some embodiments, thewing walkers have radios 104 and are part of the first room 704-1. Thelead mechanic has a radio 104 that is part of the second room 704-2. Thepilot has a radio that is part of the third room 704-3. Radios 104 thatare part of the first room 704-1 sum voice data from radios 104 that arepart of the first room 704-1 and voice data from radios 104 that arepart of the second room 704-2. Radios 104 that are part of the secondroom 704-2 sum voice data from radios 104 that are part of the secondroom 704-2, the third room 704-3, and the first room 704-1. Radios 104that are part of the third room 704-3 sum voice data from radios 104 inthe third room 704-3 as well as voice data from radios 104 in the firstroom 704-1 and the second room 704-2. Thus the pilot can hear the wingwalkers, but the wing walkers cannot hear the pilot; and the leadmechanic can hear and be heard by the pilot and the wing walkers. Insome embodiments, some radios 104 cannot access all rooms 704. Forexample, the wing walkers have radios 104 that can toggle between onlythe first room 704-1 and the second room 704-2.

In another example, a SWAT (Special Weapons And Tactics) team comprisesa commander, a first team with a first team lead, and a second team witha second team lead. Radios that are part of the first room 704-1 sumvoice data from radios that are part of the first room 704-1 and voicedata from radios that are part of the third room 704-3. Radios that arepart of the second room 704-2 sum voice data from radios that are partof the second room 704-2 and from radios that are part of the third room704-3. Radios that are part of the third room 704-3 sum voice data fromradios that are part of the first room 704-1, the second room 704-2, andthe third room 704-3. The first team operates with radios part of thefirst room 704-1; the second team operates with radios part of thesecond room 704-2; and the commander operates with a radio part of thethird room 704-3. Thus the first team members and the second teammembers can hear the commander, and the commander can hear the firstteam members and the second team members. But the first team cannot hearvoice communication from the second team; and the second team cannothear voice communication from the first team. However, if the first teamlead needed to speak to the second team lead, then the first team leadcould toggle to the second room 704-2 or to the third room 704-3. Insome embodiments, a button is used to temporarily toggle to differentrooms. For example, the first team lead has a push button that when heldtransfers the first team radio from the first room to the third room.When the push button is released, the first team lead radio reverts backto the first room. The first team lead can then quickly contact otherteams with an urgent message. In some embodiments, multiple buttons areavailable to allow a user to quickly communicate with different rooms704-3. In some embodiments, a fourth room is provided. Radios of thefourth room can hear communication in all other rooms, but only radiosthat are part of the fourth room can hear communication from radios inthe fourth room. Thus if the commander, the first team lead, and thesecond team lead wanted to confer, they could toggle their radios to bepart of the fourth room and still be able to hear communication fromother radios.

Configuration Sharing

In some embodiments, different wireless-conference groups 700 havedifferent configuration profiles. A configuration profile (or groupprofile) comprises one or more configuration parameters used incommunicating with other radios in a room, group, and/orwireless-conferencing system 100. Examples of configuration parametersinclude an address of the radio; an address of the master radio of agroup; an address of a master radio of a different group; a systemidentifier; a group identifier; room identifier(s) (rooms beingdivisions within a group); a number of rooms in a group; a slotassignment(s); a hopping sequence; a spreading code; a time offset;and/or a hopping sequence identifier.

In some embodiments, a group profile is established on start up. Duringstartup, radios 104 sync based on the group profile. In someembodiments, radios, while on, can share a group profile with anotherradio. In some embodiments, the first radio 104-1 and the second radio104-2 establish communication in a group 700 having a group profile(e.g., on the same hop sequence and timing). The second radio 104-2 isput in a mode share the group profile (e.g., without turning off). Thethird radio 104-3 is put in a mode to receive a group profile (e.g., putin a mode to search for a master). The third radio 104-3 received thegroup profile from the second radio 104-1. The third radio 104-3 thensyncs with the group 700 using the group profile. In some embodiments,the third radio 104-3 must be within a certain distance of the firstradio 104-1 and/or the second radio 104-2 to receive the group profileand/or sync with the group 700 (e.g., between zero and 5, 4, 3, 1, or0.5 meters).

In some embodiments, the group profile is shared over the Internet(e.g., through a mobile app) and/or through a removable and/ordetachable memory device (e.g., Secure Digital (SD) card; and/or cableconnected to a memory device and/or to another radio).

FIG. 8 illustrates a flowchart of an embodiment of a process 800 forsharing a group profile. The process 800 begins in step 804 where thefirst radio 104-1 and the second radio 104-2 form a wirelessconferencing group 700. A group profile comprises one or moreconfiguration parameters. In step 808, the second radio 104-2 shares thegroup profile (or a portion of the group profile; or one or moreconfiguration parameters) with a third radio 104-3 after already formingthe wireless-conferencing group with the first radio 104-1. In someembodiments, the second radio 104-2 enters a mode to share the groupprofile (e.g., not turning off before sharing). In some embodiments, thesecond radio 104-2 shares the group profile by wirelessly transmittingthe group profile (e.g., during a time slot or using Bluetooth). In someembodiments, the second radio 104-2 shares the group profile via theInternet. In step 812, the third radio joins the wireless-conferencinggroup 812 after receiving the group profile. The first radio 104-1, thesecond radio 104-2, and the third radio 103-3 are configured tocommunicate directly with each other (e.g., without using a basestation).

Combining Multiple Configurations

In some embodiments, a radio 104 stores more than one group profileand/or configurations for switching between wireless-conferencing groups700 and/or wireless-conferencing systems 100. In some embodiments, adirect sequence spread spectrum system is used in which different groups700 use different spreading codes, different radio channels, and/ortime-offset spreading codes to create different communication links.Starting the spreading sequence at different times to differentiatebetween different groups 700 all having the same spreading code is knownas a time-offset spreading code technique. In some embodiments, radios104 in a wireless-conferencing system 100 share the same spreading code,and radios 104 in a group 700 share the time-offset.

FIG. 9 shows a block diagram of an embodiment of twowireless-conferencing systems 100, a first wireless-conferencing system100-1 and a second wireless-conferencing system 100-2. The firstwireless-conferencing system 100-1 comprises three groups: 1A, 1B, and1C. The second wireless-conferencing system 100-2 comprises two groups:2A and 2B. Each group has one or more rooms 704. Group 1A has threerooms: room 1A1, room 1A2, and room 1A3. Group 1B has one room: room1B1. Group 1C has four rooms: rooms 1C1, 1C2, 1C3, and 1C4. Rooms areformed by radios 104 summing voice data from other radios that are partof a common room and/or another room as described earlier. Each grouphas a particular hop sequence and timing. Thus radios part of room 1A1have a similar hop sequence and timing as radios part of room 1A2 (andreceive voice data from radios that are of room 1A2), but the radios inroom 1A1 do not necessarily sum voice data received from radios in room1A2.

A radio 104 can store multiple group profiles. For example, the secondradio 104-2 starts as part of group 1A. The third radio 104-3 starts aspart of 1C. The second radio 104-2 can toggle between only three rooms:1A1, 1A2, and 1A3. The third radio 104-3 can toggle between only fourrooms: 1C1, 1C2, 1C3, and 1C4. A user of the third radio 104-3 desiresto join group 1A. The user of the third radio 104-3 places the thirdradio 104-3 in a mode to add a master; a user of the second radio 104-2places the second radio 104-2 in a mode to share a configuration profileof group 1A. After the third radio 104-3 receives the configurationprofile of group 1A, the third radio 104-3 can toggle between sevenrooms: 1C1, 1C2, 1C3, and 1C4 as well as 1A1, 1A2, and 1A3. In someembodiments, the second radio 104-2 is a master radio of group 1A. Insome embodiments, the second radio 104-2 is a slave radio in group 1A.In some embodiments, limiting configuration profile sharing by themaster radio of a group increases security. In some embodiments, slavesare allowed to share configuration profiles (e.g., to increaseaccessibility).

In some embodiments, configuration profiles cannot be shared with radiosoutside a wireless-conferencing system 100 (e.g., to increase security).In some embodiments, configuration profiles can be shared between radiosof different wireless-conferencing systems (e.g., to increaseaccessibility). For example, a fourth radio 104-4, part of group 2A,could share a configuration profile of group 2A with the third radio104-3, which is part of group 1C. Group 2A has room 2A1. Thus the thirdradio 104-3 could toggle between eight rooms: 1C1, 1C2, 1C3, 1C4, 1A1,1A2, 1A3, and 2A1. It is noted that when toggling between rooms in group1C, the third radio 104-3 does not change hopping sequences (i.e., thethird radio 104-3 is hopping to the same frequencies at the same time asother radios in group 1C and receives transmissions from radios in group1C). But when the third radio 104-3 toggles to a room in group 1A or 2A,then the third radio 104-3 adopts the hopping sequence of group 1A or 2Aand no longer receives radio communication from radios in group 1C. Butsince the third radio 104-3 has the configuration profile of group 1C,the third radio 104-3 can later toggle back to group 1C. In someembodiments, each radio is given number of unique identifiers. In someembodiments, two, four, or six are given, but more or less uniqueidentifiers can be given. For example football coaches get four(offense, defense, and two private channels). More unique identifierscan be added (e.g. via the Internet and/or synchronizing with otherradios). In some embodiments, unique identifiers allow a radio toparticipate in a group and/or specific room(s) in groups. In someembodiments, each room is given a unique identifier (e.g., a 64 bitidentifier); each wireless-conferencing group 700 is given a uniqueidentifier; and/or each wireless-conferencing system 100 is given aunique identifier. In some embodiments, configuration profiles are onlytransmitted when a radio is in a sync mode (e.g., first turned on). Insome embodiments, configuration profiles are not transmitted wirelesslybut require a wired connection (and/or a code, pin, etc. be entered)before sharing the configuration profile. In some embodiments,configuration profiles can be shared after syncing, as discussed above.

In a further example, the first team from the SWAT team example above ispart of Group 1A and the second team is part of group 1B. The first teamlead receives configuration parameters about group 1B from the secondteam lead; and the second team lead receives configuration parametersabout group 1A from the first team lead. Thus the first team lead andthe second team lead can toggle between groups. The commander uses tworadios with a signal compounder (e.g., signal compounder as described incommonly owned U.S. Pat. No. 8,705,377, issued Apr. 22, 2014, which isincorporated by reference for all purposes) to speak and listen to bothgroup 1A and group 1B at the same time. A person skilled in the art willrecognize that there are many permutations and combinations of rooms andsummation of voice data based on desired functionality for what theradios are being used for.

FIG. 10 illustrates a flowchart of an embodiment of a process 1000 forusing multiple group configurations. The process 1000 begins in step1004 where a radio 104 communicates with a first wireless-conferencinggroup using a first group profile. In step 1008, the radio 104configurations of a second group (e.g., receives a group profile of thesecond group). In step 1012, the radio 104 switches from communicatingin the first wireless-conferencing group to communicating in the secondwireless-conferencing group. In some embodiments, the radio 104 switchesback from communicating in the second wireless-conferencing group tocommunicating in the first wireless-conferencing group. In someembodiments, the radio 104 receives a group profile of a thirdwireless-conferencing group and switches to communicating in the thirdwireless-conferencing group. In some embodiments, the secondwireless-conferencing group and the first wireless-conferencing groupare in the same wireless-conferencing system 100. In some embodiments,the first wireless-conferencing group and the thirdwireless-conferencing group are in different wireless-conferencingsystems. In some embodiments, the radio 104 switches between groupswithout powering off.

In some embodiments, a method for combining multiple configurations forcommunicating with multiple wireless groups comprises obtaining a firstprofile, wherein the first profile comprises a first parameter used forcommunicating with a first set of radios that are part of a first group,and the first group uses a first multiple-access protocol; joining thefirst group using the first profile; communicating with the first set ofradios; obtaining a second profile, wherein the second profile comprisesa second parameter used for communicating with a second set of radiosthat are part of a second group, and the second group uses a secondmultiple-access protocol; joining the second group using the secondprofile; and communicating with the second set of radios.

Slot Reassignment

In some embodiments, a master can reassign radios assigned to slots toreduce and/or avoid radios jamming each other. Frames in differentgroups of a wireless conferencing system have a common start time. Thusa first radio in a first group assigned to slot 5 will transmit at thesame time as a second radio in a second group assigned to slot 5, thoughthe first radio will be transmitting on a different frequency than thesecond radio. If the first radio is near the second radio, but the firstradio is not assigned to a corresponding transmission slot as the secondradio (e.g., both radios not assigned to slot 5), the second radio mayinterfere with the first radio receiving transmissions from other radiosin the first group.

For example, a college football team uses a first wireless conferencingsystem for communication. The college football team is split into anoffense team and a defense team. The offense team is led by an offensecoordinator and the defense team is led by a defense coordinator. Theoffense team uses a first group of radios operating as group A. Thedefense team uses a second group of radios operating as group B. A headcoach of the college football team has two radios; one radio that ispart of group A and another radio that is part of group B. The tworadios of the head coach are coupled by a signal compounder as describein the '377 patent. The offense coordinator and the defense coordinatorsit next to each other in a press box at a stadium. The offensecoordinator has an offense assistant, also in the press box. The defensecoordinator has a defense assistant, also in the press box. The offensecoordinator has an offense-field assistant near a sideline of a footballfield at the stadium. The defense coordinator has a defense-fieldcoordinator near the sideline of the football field. The offensecoordinator has radio 1. The defense coordinator has radio 2. Theoffense assistant has radio 1X, and the offense-field assistant hasradio 1Y. The defense assistant has radio 2X, and the defense-fieldassistant has radio 2Y.

If radio 2 (of the defense coordinator) transmits during the same timeas radio 1Y (of the offense-field assistant), it may be difficult forthe offense coordinator, using radio 1, to clearly receive transmissionsfrom radio 1Y if radio 2 and radio 1Y transmit at the same time onfrequencies that are near each other because a signal from radio 1Y(from the sideline to radio 1 in the press box) would be much weakerthan a signal from radio 2 (sitting next to radio 1 in the press box).With ideal filters, radio 2 would not interfere. However, since filtersused in radios are not ideal, if radio 2 transmits on a frequency near afrequency that radio 1Y transmits on, there can be interference. Forexample, if radio 1Y and radio 2 are both assigned to slot 3 of theirrespective groups, then radio 1Y and radio 2 transmit during the sametime. In some embodiments, to reduce interference, radios closest toeach other are assigned similar slots to transmit on. For example, radio1 and radio 2 are assigned to slot 1, radio 1X and radio 2X are assignedto slot 2, and radio 1Y and 2Y are assigned to slot 3 in theirrespective groups.

Assigning slots to radios to reduce interference can be donepreemptively and/or in response to interference. An example topreemptively assign slots is a master radio using a predeterminedprotocol to assign slots. For example, the master assigns lower numberedslots to radios having a stronger received signal strength indicator(RSSI). Continuing the example of the college football team, the offensecoordinator (radio 1) uses his radio as a master radio for group A. Thedefense coordinator (radio 2) uses his radio as a master radio for groupB. When group A turns on, including radio 1, radio 1X, and radio 1Y,radio 1 (the master for group A) assigns radio 1 to slot 1 as the masterof group A. Radio 1 then assigns radio 1X (offense assistant in thepress box) to slot 2 and radio 1Y (offense-field assistant on thesideline) to slot 3 because radio 1X would have a stronger RSSI thanradio 1Y because radio 1X is closer to radio 1 than radio 1Y. And slotassignments can change. For example, if radio 1Y was closer to radio 1Xat start up (e.g., radios turned on when all radios in group A were inthe same room), and then later radio 1Y is taken further away than radio1X, then the master radio of group A (radio 1) would switch slotassignments between radio 1X and radio 1Y.

Similarly, group B master (radio 2) assigns radios with stronger RSSI tolower numbed slots. Thus radio 2 would assign radio 2X (defenseassistant in press box) to slot 2 and radio 2Y (defense-field assistanton the sideline) to slot 3 because radio 2X would have a stronger RSSIthan radio 2Y because radio 2X is closer to radio 2 than radio 2Y. Byboth masters (radio 1 and radio 2) of a system assigning slots based onRSSI, radios that are closer to each other transmit during the samenumbered slot, reducing potential interference between radios in group Aand group B.

Reassigning slots in response to interference can be done in lieu of orin combination with preemptively assigning slots. For example, a slaveradio in a group having a master may determine another radio, in anothergroup, is causing interference. The slave then transmits a request tothe master to be switched to another slot (e.g., to be transmitting onthe same slot as the radio in the other group causing interference). Forexample, the slave radio could determine that the slave radio isreceiving interference at times when receiving on slot 5. The slaveradio then determines the radio from the other group is transmitting onslot 5 and is close to the slave radio. The slave radio then transmits arequest to the master for the slave radio to transmit on slot 5. Theslave radio may determine that the slave radio is receiving interferencein a variety of ways. The slave radio could use error detection, RSSI,or a combination of error detection and RSSI.

In using error detection to determine interference, the slave radiocould track times that the slave radio is receiving bad data. If theslave radio determines that the slave radio is receiving bad data duringone or more slots, the slave radio transmits a request to transmitduring the slot the slave radio is receiving bad data—the assumptionbeing there is another radio from another group close to the slave radiocausing interference during the slot the slave radio is receiving baddata. In some embodiments, the slave radio tracks periodic times theslave radio is receiving bad data. Thus the slave could determine whenin a frequency hopping pattern the slave radio is receiving bad data. Ifthe slave determines a periodic nature of the bad data, then there is alikelihood that a radio from another group is jamming the slave radiobecause the slave radio is periodically receiving on frequencies whenthe radio from another group is transmitting on a frequencies closeenough to cause interference.

In using RSSI, the slave radio can track RSSI during transmission slots.If the slave radio receives a spike of RSSI during a particular slot,the slave radio can determine that a radio from another group is closerand transmitting during the particular slot. Thus the slave radiorequests to transmit on the particular slot. In some embodiments, theslave radio also keeps track of which frequencies the slave radioreceives increased RSSI during a transmission slot.

In some embodiments, both error detection and RSSI are used to determineinterference. For example, the slave radio looks at error detection andthen looks at RSSI for the times there are errors. By looking at RSSIduring multiple slots, the slave radio can rule out general jamming(RSSI would not change much during other transmission slots). In someembodiments, loop detection is used to keep a slave radio fromcontinuing to ask for slot reassignment.

To change slot assignments, the master radio can ask a second slave inthe requested slot to go to a listen-only mode or to a different slot.The master assigns the slave radio requesting a slot change to therequested slot. Then the second slave is assigned a slot. Or the masterradio gives a command for the radio requesting the slot and the secondslave to switch slots concurrently.

Further, error detection and slot reassignment requests can be performedby a slave and/or a master. For example, slaves transmit error dataand/or RSSI data to the master during the extra slot discussed above andthe master determines to reassign slots based on error data receivedfrom slaves.

Short-Range Radio Control

In some embodiments, non-voice data sent to a radio changes how theradio operates. For example, a slave radio is put in a dead mode where:a shutdown sequence is mimicked (e.g., by lights and/or tones), thespeaker turns off, microphone volume is increased (e.g., set to amaximum), lights on the radio are turned off, and/or an ability of theradio to be shut down by a power button is disabled. In someembodiments, a radio turns into dead mode if a suspicion exists that anenemy has access to the radio. In some embodiments, dead mode istriggered by a change in biometric data (e.g., not receiving biometricdata at one or more expected times or heartrate data indicating a heartrate of less than 20 beats per minute). In some embodiments, anotherradio (e.g., a radio with a master flag as described in commonly ownedU.S. Pat. No. 8,681,663, issued on Mar. 25, 2014, which is incorporatedby reference) has authority to send a command to a slave radio for theslave radio to go into dead mode (and/or to return to normal operations,and/or to send a command for the slave radio to shut down and restart,in dead mode, after a predetermined time duration [e.g., to conservebattery power]). In some embodiments, instead of the speaker turning offin dead mode, the speaker transmits white noise at a volume proportionalto a volume control on the radio (e.g., to spoof an enemy that the radioin dead mode is not working). In some embodiments, instead of the radioin dead mode appearing to shut down, the radio in dead mode performsshutdown and startup indications (e.g., blinking lights, emitting tones,etc.) in response to a power button being activated, just as the radiowould in a normal operation mode (e.g., to spoof an enemy that the radiomay be working but is not in range to receive communication from otherradios). In some embodiments, a radio in dead mode continues to transmitnon-voice data (e.g., GPS data, biometric data, attempts to turn on oroff the radio, etc.). In some embodiments, a priority structure is usedto control the radio. For example, a master radio is given control overslave radios in a group that the master is over, and a system-levelradio is given control over master radios and slaves of the masterradios.

FIG. 11 illustrates a flowchart of an embodiment of a process 1100 forcontrolling a radio in a wireless-conferencing system 100. The process1100 begins in step 1104 where a second radio (e.g., second radio 104-2)in a first mode receives voice data from a first radio (e.g., 104-1).The first mode in this process is similar to normal communication in awireless-conferencing system. In step 1108, the second radio sends thevoice data from the first radio (e.g., received by transceiver 108-2/RFsection 55) to a speaker (e.g., 61) of the second radio. In step 1112switches to a second mode (e.g., the dead mode discussed above). Whilein the second mode (dead mode) the second radio blocks voice data fromthe first radio going to the speaker of the second radio, step 1116. Thesecond radio continues to transmit voice data and/or non-voice data.

In some embodiments, a system for controlling a radio comprises a firstradio and a second radio; the second radio has a transceiver and aspeaker, wherein the second radio is configured to operate in a firstmode to receive voice data from the first radio and send the voice datafrom the first radio to the speaker and transmit data to the firstradio; and the second radio is configured to operate in a second mode toblock voice data received from the first radio from reaching the speakerof the second radio and to transmit data to the first radio.

In some embodiments, data transmitted from the second radio to the firstradio comprises voice data and non-voice data; the second radio emitswhite noise (static) proportional to a volume setting on the secondradio while in the second mode; the second radio transmits GPS data,biometric data, and/or attempts to turn on or off the second radio whilethe second radio is in the second mode; the second radio is a slaveradio; the second radio is (was) a master radio; and/or receives andimplements commands from the first radio while in the second mode (andfirst mode). In some embodiments, the second radio switches to thesecond mode based on bio data missing (e.g., heartrate below 20 beatsper minute (bpm) for 1, 2, 5, or 10 minutes; or no heartrate andreceiving a power-down command from a user of the second radio). In someembodiments, the second radio in the second mode turns a sequence oflights and/or tones to simulate powering down after receiving a poweroff command from a user of the second radio, but remains on (e.g., withlights off that are normally on during the first mode and/or no soundbeing emitted from the speaker of the second radio). In someembodiments, the second mode blocks voice data by not adding the voicedata to be summed. In some embodiments, the second mode blocks voicedata by hopping to a different frequency than what the first radio ishopping to (e.g., one or two channels above or below a hoppingsequence), except when the second radio transmits (hopping back to aproper frequency so the first radio receives transmissions from thesecond radio). In some embodiments, the second radio switches to thesecond mode based on a command received from the first radio (e.g., thefirst radio having a master flag and a user instructing the first radioto send a command to the second radio to enter the second mode). In someembodiments, the first radio gives a command to the second radio for thesecond radio to switch back to the first mode.

Battlefield Authentication

In some embodiments, data transferred between radios of a wirelessconferencing system is used for authentication before a weapon can beused. For example, a radio (and/or radio functions) is embedded into aweapon system, for example, a tank or a man-portable air-defense(MANPAD). An example of a MANPAD is the FIM-92 Stinger, ashoulder-fired, heat-seeking missile. In some embodiments, an embeddedradio does not have a microphone and/or a speaker. For the weapon systemto operate, the embedded radio must first receive an operation code fromanother radio in the wireless conferencing system 100. If the embeddedradio does not receive the operation code, the weapon system will notoperate normally (e.g., not fire). In some embodiments, the operationalcode is given a time-out duration. For example, a time-out duration fora tank is 30 days, whereas a time-out duration for a MANPAD is twoweeks. Time-out durations longer or shorter than these are set based ondesired functionality and perceived threats.

In another example, a SWAT-team sniper has a sniper rifle. The sniperrifle is configured to not fire unless a hostage negotiator pushes abutton on a radio of the hostage negotiator, sending an operation codeto the sniper rifle. Thus the hostage negotiator can toggle use of thesniper rifle on and off. The sniper receives a visual or audibleindication the sniper rifle is prepared to shoot. In some embodiments,one radio can provide the operation code (e.g., any authorized radioproviding the operation code enables the weapon). In some embodiments,two or more radios must provide the operational code before the weaponis enabled. In some embodiments, the weapon system has an override, butstored data would show the override was used. Thus the sniper couldstill take a shot, but records would show that the sniper used theoverride. In some embodiments, a wireless-conferencing system 100 isused to provide the operation code because of security (e.g., encryptionand/or frequency hopping) as well as accessibility (e.g., range ofradios 104 and ability to form a mesh network).

FIG. 12 depicts a simplified diagram of an embodiment of a weapon systemreceiving an operation code from a radio. The radio 104 comprises afirst transceiver 108-1, a first antenna 110-1, and a first processor1208-1. The weapon system 1204 comprises a second transceiver 108-2, asecond antenna 110-2, a second processor 1208-2, and an activationmechanism such as a button, switch 1212, and/or trigger. The activationmechanism fires the weapon and/or powers on part(s) of the weapon. Insome embodiments, activation codes are sent over a mesh network.

The first transceiver 108-1 transmits using the first antenna 110-1 theoperation code (e.g., during the extra slot 308) based on an instructionfrom the first processor 1208-1. The second transceiver 108-2 receive,using the second antenna 110-2, the activation code. The secondprocessor 1208-2 authenticates the activation code on enables the switch1212. In some embodiments, the processor 1208 is circuitry (e.g.,comprising wires and/or one or more digital signal processors. In someembodiments, the weapon is a heat-seeking missile. In some embodiments,the operation code has a time out of equal to or less than 30 days, 14days, 1 day, 1 hour, 10 seconds, 5 seconds, 1 second, and/or 0.5seconds.

Cell-Band Use for Wireless Conferencing

In a cellular network, full-duplex communication is enabled by routingdata through a base station (e.g., a cell tower). A radio frequency (RF)band is assigned to a cellular-service provider that operates the basestation. A mobile device within range of the base station is assignedtwo unique frequencies, or channels, of the RF band: one frequency fortransmitting and another frequency for receiving. The base stationreceives data from the mobile device on the transmitting frequency andsends data to the mobile device on the receiving frequency. Since themobile device transmits and receives on different frequencies, data canbe transmitted and received simultaneously, without causinginterference. However, if the mobile devices travel outside the range ofthe base station coverage, and there is not another base station inrange, the mobile device cannot communicate with other mobile devices,even if the mobile device is within range of the other mobile devices.Thus communication is lost because some mobile devices requires a basestation to communicate.

In some embodiments of the present invention, a mobile devicecommunicates with other mobile devices in a wireless-conferencing group,using a sub band of the RF band assigned to the cellular-serviceprovider. Thus mobile devices can communicate with each other withoutusing a base station. A mobile device configured forwireless-conferencing (e.g., configured with capabilities of radios 104in FIG. 1) transmits a request to a base station (e.g., a cell tower) toreserve a sub band of the RF band assigned to the base station. Theradio can be a master radio or a slave radio of a wireless-conferencinggroup. If the base station, or any base station, is not within range, adefault sub band is used for wireless conferencing. Mobile devices of afirst wireless-conferencing group communicate with each other directlyin full-duplex mode by using a multiple access protocol, such as TDMAdiscussed above. A master device (e.g., a master radio or a mastermobile device) assigns each mobile device (and/or radio) a time slotand/or keeps timing. Each mobile device transmits data during anassigned slot (e.g., time slot) and receives data from other mobiledevices during other slots. In some embodiments, a mobile device withwireless-conferencing capability is interchangeable with a radio 104 ofa wireless conferencing group 700. In some embodiments, a microchip, ormicrochips, (e.g., having functions similar one or more elements in FIG.2, such as microprocessor 57, microprocessor 63, ASIC 58, and/or codec59) is added to a mobile device to provide the mobile devicecapabilities as radios (e.g., 104) used for wireless conferencing; thusthe mobile device can be considered a radio as discussed in thisapplication.

FIG. 13A is a block diagram of an embodiment of a mobile device 1300-1that includes wireless-conferencing capabilities. Mobile device 1300-1includes computer processor 1302, memory module 1304, software 1306, andRF transceiver 1308. Computer processor 1302 is coupled to memory module1304 and RF transceiver 1308. Computer processor 1302 can include one ormore processing units, such as microprocessors. In some embodiments, theprocessor 1302 performs functions of the microprocessor 57,microprocessor 63, ASIC 58 and/or codec 59 of FIG. 2. Memory module 1304can be any non-transitory machine-readable media, such as optical disksor flash memory devices. Software 1306 is stored in memory module 1304and provides instructions to computer processor 1302 according to any ofthe embodiments described herein.

RF transceiver 1308 operates in one or more of the cellular RF bands. Asused herein, cellular RF bands are RF bands that have been allocatedspecifically for cellular phone use. In some embodiments, the RFtransceiver is also configured to operate in non-cellular RF bands(e.g., similar to transceiver 108). An RF band is a range of one or morefrequencies in an electromagnetic spectrum. Specific RF bands that havebeen allocated for cellular phone use vary by region. Computer processor1302 utilizes RF transceiver 1308 to communicate, by transmitting andreceiving data, with other mobile devices and/or base stations.

FIG. 13B is a block diagram of another embodiment of a mobile device1300-2. Mobile device 1300-2 is similar to mobile device 1300-1 depictedin FIG. 13A, but mobile device 1300-2 includes two RF transceivers 1308,a cellular RF transceiver 1309 and a radio RF transceiver 13010. Thecellular RF transceiver 1309 operates on one or more cellular bands. Theradio RF transceiver 1310 operates in one or more RF bands that are notallocated for cellular-phone use. For example, radio RF transceiver 1310can operate in an industrial, scientific, and medical (ISM) RF band thatis reserved for purposes other than telecommunications. In someembodiments, the radio RF transceiver 1310 can operate in non-licensedband(s) (e.g., 900 MHz).

FIG. 13C is a block diagram of interface components of an embodiment ofa mobile device 1300-3 that includes full-duplex radio capabilities.Interface components include speaker 1312, display 1314, input device1316, and microphone 1318. The interface components are coupled to aprocessor, such as computer processor 1302 shown in FIGS. 13A and 13B.Speaker 1312 can be used to generate voice and other sounds (e.g.,similar to speaker 61). Display 1314 can be used to generate a visualoutput, such as a graphical user interface (GUI). Furthermore, display1314 can be a touch screen, which can also be used for receiving userinput. Input module 1316 can be a mechanical or capacitive button thatcan be pressed by a user to trigger a pre-programmed functionality.Microphone 1318 can be used to detect speech and other sounds as input(e.g., similar to microphone 60).

It will be understood that mobile devices 1300 can include additionalcomponents not shown in the figure. For example, mobile devices 1300 caninclude additional wireless transceivers that utilize differenttechnologies for wireless communication or different technologies can becombined into a single wireless transceiver. Different wirelesscommunication technologies include RF, Bluetooth, Bluetooth low energy(BLE), Wi-Fi, near field communication (NFC), and 3G/4G mobilecommunication. Additionally or alternatively, different embodiments cancombine, separate, omit, and/or rearrange the components shown in FIGS.13A-C. For example, speaker 1312 and microphone 1318 can be located on aheadset instead of, or in addition to, being located on the mobiledevice.

FIG. 14 is a flowchart of one embodiment of a process 1400 foractivating full-duplex radio capabilities on a mobile device. Process1400 is performed by a mobile device that includes wireless-conferencingcapabilities, such as those shown in FIGS. 13A-C. In this embodiment,process 1400 can be performed by a master device or a slave device of awireless-conferencing group.

At block 1402, user input is received to initialize radio communication.In response to receiving the user input, the mobile device determines ifa signal is detected from a base station operated by a service providerfor the mobile device at block 1404. In some embodiments, the mobiledevice first sends a ping to the base station. In some embodiments, userinput is turning on the mobile device. In some embodiments, user inputis a selection in response to providing the user a prompt by the mobiledevice for the mobile device to communicate with the base station. If asignal from the base station is not detected (and/or the user doesn'twant to communicate with the base station; e.g., for security reasons),a default sub-band (a range of one or more frequencies is used for radiocommunication) is used at block 1406. In some embodiments, the defaultsub-band is part of the cellular RF band that is assigned to thecellular network of the mobile device. For example, if the cellularservice provider for the mobile device is assigned 60 megahertz (MHz) ofbandwidth at frequencies between 1,850 MHz and 1,910 MHz, the sub-bandcan be 5 MHz of bandwidth at frequencies between 1,860 MHz and 1,865MHz. In some embodiments, the default sub-band is in a non-licensedband.

If a signal from the base station is detected at block 1404, the mobiledevice transmits a request to the base station to reserve a sub-band forradio communication at block 1408. The request can include the number ofmobile devices in the wireless-conferencing group. A response to therequest is received at block 1410. At block 1412, the mobile devicedetermines if the request is granted.

If the request is not granted, the master device for thewireless-conferencing group switches to a different mobile device thatis on a different cellular network. For example, if the mobile device isa Sprint device, the mobile device can have a second mobile device(e.g., a Verizon device) become the master device and request a sub bandfrom a second service provider and the process 1400 returns to step2403, 1404, or 1408 and repeats until service providers of each mobiledevice in the wireless-conferencing group have been tried. Since eachcellular service provider is assigned different cellular RF bands anduses different base stations, it is possible that a signal from thesecond service provider (e.g., Verizon) base station is not detected inthe area or the second service provider's base station grants therequest. Thus, a sub-band of a the second service provider's cellular RFband can be used for radio communication if one from the first serviceprovider (e.g., Sprint) is not available. Additionally, if the mobiledevices of the wireless-conferencing group are capable of communicatingon non-cellular RF bands, non-cellular frequencies can be used for radiocommunication if a cellular sub-band is not available. In anotherembodiment, a conference call (e.g., using the base station) can beestablished (e.g., automatically) if the request is denied.

If the request is granted at block 1412, the sub-band that is allocatedby the base station is used for wireless-conferencing at block 1416. Atblock 1418, the master device assigns a time slot to each mobile deviceof the wireless-conferencing group. At block 1420, assignments aretransmitted to the other mobile devices by the master device. Eachmobile device can then communicate in full-duplex mode in thewireless-conferencing group by transmitting during an assigned time slotand receiving during other time slots.

Communicating in the wireless-conferencing group can be directcommunication between mobile devices and/or can be facilitated by a basestation. In direct communication, the mobile devices in thewireless-conferencing group transmit and receive on the same frequency.In facilitated communication, the mobile devices can transmit andreceive on the same frequency, in which case the base station combinessignals from the mobile devices and retransmits a combined signal duringa time slot assigned to the base station. In another embodiment, themobile devices transmit on a first frequency of the sub-band and receiveon a second frequency of the sub-band, in which case the base stationreceives the data from the mobile devices on the first frequency andretransmits the data on the second frequency. The base station may takeon a time slot assignment.

If the radio communication is established when a base station is not inrange, and radios from a wireless-conferencing group moves within rangeof a base station, a side channel (e.g., during the extra slot 308) orfrequency can be used to request a sub-band from the base station. Insome embodiments, each mobile device (slave device(s) and/or masterdevice) checks periodically for a base station in range. If a mobiledevice determines a base station is in range, the mobile device requestsa sub-band assignment from the base station (e.g., going to step 1404).If a sub-band assignment is made, the mobile device transmits thatassignment to other mobile devices of the wireless-conferencing group,the master device determines a timing to change to the sub band, and themaster device transmits the timing to change to the sub band to themobile devices and/or to the base station. For example, some friends goskiing in the mountains. In the mountains there is not a base station inrange. The friends form a wireless-conferencing group with mobiledevices (their mobile phones with wireless-conferencing technology). Thefriends are able to communicate directly with each other in themountains, without a cell tower in range. As the friends drive home andenter a range of a cell tower, one of the mobile phones requests asub-band allocation from the cell tower. If the request is approved, thewireless-conferencing group uses the sub band. If the request is denied,the mobile devices can call each other using the cell tower and/or thewireless-conferencing group can move to a non-licensed frequency band.Further, for security purposes, mobile device communications can beencrypted.

In some embodiments, if a second wireless-conferencing group is in thesame area as a first wireless-conferencing group, and a device in thesecond wireless-conferencing group senses a device in the firstconferencing group, then the second wireless-conferencing group canswitch to a different sub band and/or timing.

FIG. 15 is a flowchart of an embodiment of a process 1500 forfacilitating full-duplex radio communication between mobile devicesusing a base station. At block 1502, the base station receives a requestto reserve a dedicated sub-band for radio communication. At block 1504,the base station determines if the amount of traffic on the cellularnetwork is greater than a threshold setting. If there is too muchtraffic on the cellular network, the base station transmits a responsedenying the request at block 1506.

If there is not too much traffic, the base station allocates a dedicatedsub-band at block 1508. In some embodiments, an amount of bandwidth thatis allocated for the sub-band is based on the amount of traffic on thenetwork and/or the number of mobile devices in the wireless-conferencinggroup that is requesting the sub-band. At block 1510, the base stationtransmits a response that indicates characteristics of the sub-band,such as the center frequency and bandwidth or the sub band, to therequesting mobile device. In some embodiments, the response can includea range of channel numbers that have been allocated for the sub-band.Blocks 1512 and 1514 are optional. At block 1512, the base stationreceives TDMA packets from the mobile devices of thewireless-conferencing group (e.g., on a first frequency of thesub-band). At block 1514, the base station retransmits the TDMA packetson a second frequency of the sub-band. If the mobile devices have thecapability of using multiple sub-bands, the base station may allocationmultiple small sub-bands to accomplish the same capability as a largersingle sub-band.

In some embodiments, the base station retransmits each packet in thesame time slot that the packet is received in. Thus, the sub band isdivided in substantially equal parts between the first frequency and thesecond frequency. This embodiment can provide more functionality for thewireless-conferencing system. For example, since a mobile device isreceiving data for each of the other mobile devices in a separate timeslot, the mobile device can control the sound from each of the othermobile devices individually. Thus, a different volume can be set foreach of the other mobile devices and any of the mobile devices can bemuted individually. In another embodiment, the base station can transmita combination of the signals from all of the mobile devices on thesecond frequency. This embodiment takes less bandwidth for the secondfrequency but does not allow individual sound controls. In eitherembodiment, some frequencies or channels of the sub-band can be reservedfor control signaling.

By utilizing the base station to facilitate the radio communication,additional functionality can be enabled. For example, the base stationcan perform a signal compounder functionality to join two or more groupsin a conference, even if the two or more groups are not within radiocommunication range of each other. This concept may be used to dividelarger groups into smaller groups and allocating different smallersub-bands to the smaller group. The base station may act as a signalcompounder to combine the smaller groups so they seem to be part of alarge group or system. In some embodiments, the base station receives avoice slot 304 assignment.

FIG. 16 is an illustration of an example environment within which oneembodiment of a system with base stations performing signal compounderfunctionality (an example of a signal compounder is in the '377 patent)can be implemented. The system includes a first base station 1602, asecond base station 1604, and mobile devices that include full-duplexradio capabilities 1606, 1608, 1610, 1612 and 1614. Mobile devices 1606,1608, 1610 and the first base station 1602 are in a firstwireless-conferencing group. Mobile devices 1612 and 1614 and the secondbase station 1604 are in a second wireless-conferencing group.Additionally, the first base station 1602 can communicate with thesecond base station 1604 via a private network or a public network, suchas the Internet.

The first base station 1602 and the second base station 1604 can jointhe first wireless-conferencing group and the secondwireless-conferencing group in a conference by performingsignal-compounder functionality. Communication packets that are receivedby the first base station 1602 from the first wireless-conferencinggroup can be transmitted to the second base station 1604. The secondbase station 1604 can then transmit the packets to the secondwireless-conferencing group (e.g., in one or more assigned time slots).Similarly, the second base station 1604 can transmit communicationpackets from the second wireless-conferencing group to the first basestation 1602, which can then be transmitted to the firstwireless-conferencing group. This enables full-duplex radiocommunication between the first wireless-conferencing group and thesecond wireless-conferencing group (e.g., between distances greater thana range of the mobile devices to communicate directly with each other,such as between cities and across oceans). In some embodiments, mobiledevices and/or radios have a range less than 20, 15, 10, 5, or 3 miles(less than 35, 25, 15, 10, or 5 km). The signal-compounder functionalitycan also be used to join cellular calls with wireless-conferencinggroups.

In some embodiments, if a mobile device loses contact with a basestation, the mobile device will start a wireless-conferencing group.

Auto Dial

FIG. 17 is an interaction flowchart of an embodiment of a process 1700for auto dialing a mobile device via a cellular network when radiocommunication is lost. The process 1700 illustrates the interactionsbetween a first device (e.g., a slave) a second device (e.g., a master)of a wireless-conferencing group. The auto dial functionality allows thefirst device and the second device to maintain communication with eachother if a radio connection is lost. For example, if the first devicemoves out of signal range of the second device (e.g., moving into abuilding that attenuates radio signals), communication can be maintainedby automatically switching to a cellular call. It will be understoodthat auto dial functionality is not limited to mobile devices withintegrated full-duplex radio capabilities. The auto dial functionalitycan also be implemented on a regular mobile device that is paired with aradio, for example, using a wireless connection such as Bluetooth, asignal compounder, and/or a wired connection such as universal serialbus (USB).

At block 1702, the first device associates a first phone number with thesecond device. At block 1704, the first device detects that a radioconnection to the second device has been lost. In some embodiments, thefirst device determines that the connection is lost if a radio signal isno longer detected from the second device. In some embodiments, thefirst device monitors the received signal strength indicator (RSSI) ofthe radio signal from the second device. If the RSSI drops below apreset threshold, the first device determines that the connection islost. At block 1706, the first device automatically dials the firstphone number in response to detecting the loss of connection.

At block 1708, the second device associates a second phone number withthe first device. At block 1710, the phone call from the first device isreceived. At block 1712, the second device compares the number of thecall to the second phone number that is associated with the firstdevice. The number of the call can be determined, for example, usingcaller identification. If the number of the call does not match thesecond phone number, the call is rejected at block 1714. If the numberof the call matches the second phone number, the call is automaticallyanswered at block 1716. In some embodiments, a user of the second deviceis given a prompt to answer the call. Checking the number of the callbefore answering ensures that communication is established with theproper party. For example, if the user of the second device is in atactical situation, it would be undesirable for the second device toautomatically answer a call from an unwanted party, such as the user'sfriend or spouse.

In some embodiments, the auto-dial functionality is be implemented on aslave device, such that the slave device calls a master device (and/oranother slave device) when connection is lost. Furthermore, theauto-dial functionality can be used to maintain communication betweentwo or more wireless-conferencing groups. For example, if a first masterdevice of a first group loses radio connection to a second master deviceof a second group, one of the master devices can automatically dial theother. Additionally, more than one phone number can be associated witheach radio, and a priority can be established between the phone numberssuch that if a call cannot be established with a first number, a secondnumber is dialed, then a third number, etc. Priority can also beestablished between radios. For example, if a radio communication groupincludes three devices besides the radio (one master device and twoslave devices) the priority list can specify that the master device isdialed first, then the first slave, and then the second slave if radioconnection is lost with the group. In some embodiments, a heartbeatsignal (e.g., a periodic ping) is used to determine if communication islost. In some embodiments, the heartbeat signal is part of a preamble(e.g., the heartbeat signal is the chirp time and/or the group number ina preamble).

In some embodiments, a method for maintaining communications when aradio connection is lost comprises mapping a phone number to a firstradio; establishing a communication link using a first radio with asecond radio, wherein the communication link is a direct link betweenthe first radio and the second radio; receiving a first heartbeat signalfrom the first radio via the communication link; determining that asecond heartbeat signal has not been received from the first radio aftera time interval since receiving the first heartbeat signal; and dialingthe phone number mapped to the first radio in response to determiningthat the second heartbeat signal has not been received within the timeinterval.

In some embodiments, the direct link uses a TDMA protocol. In someembodiments, the direct link does not use a base station, and the phonecall uses a base station. In some embodiments, the second radio autoanswers the phone call. In some embodiments, the heartbeat signal issent once a frame 100. In some embodiments, the heartbeat signal is sentonce a superframe 300. In some embodiments, there are between ten and100 frames between the first heartbeat signal and the second heartbeatsignal. In some embodiments, two superframes 300 are between the firstheartbeat signal and the second heartbeat signal (e.g., from when thesecond heartbeat signal is expected to have been transmitted).

Mobile Application (App) for Wireless-Conferencing

FIG. 18 is an illustration of an embodiment of a user interface on amobile device for configuring radio capabilities. As shown in theillustration, three wireless-conferencing groups have been configuredusing the interface, Group 1, Group 2, and Group 3. If the user presseson or selects one of the groups, a new screen can be displayed forconfiguring the selected group. The “Conference” button can be used tojoin different groups for conference. Additionally, the “Add” and“Delete” buttons can be used to add a new group or delete an existinggroup.

FIG. 19 is an illustration of an embodiment of a user interface on amobile device for configuring users in a wireless-conferencing group.This screen can be displayed in response to user selection of Group 1 onthe screen illustrated in FIG. 18. Users of the group can be configuredon this screen. Configuration of a user can include associating a namewith the radio of the user and associating one or more phone numberswith the user for auto dial functionality. Additionally, the volume ofeach user can be controlled individually and each user can be muted.

This screen also allows new users to be added to the group or existingusers to be deleted from the group. If a user is added, a time slot isassigned to the radio of the user and a token (and/or key) istransmitted to the radio being added that indicates the assigned timeslot. If an existing user is deleted, the group is reconfigured and thenew properties of the group is transmitted to the remaining users. Forexample, the group can be reconfigured to use a different frequency orchannel for communication or a new encryption key can be generated. Insome embodiments, to delete an existing user a time slot of the existinguser is reassigned to another device.

FIG. 20 is an illustration of an embodiment of a user interface on amobile device for configuring conferences between wireless-conferencinggroups. This screen can be displayed in response to user selection ofthe “Conference” button on the screen illustrated in FIG. 18. Thisscreen can be used to configure signal-compounder functionalities of themobile device and/or a radio that is paired with a mobile device. Thisscreen allows the user to specify a name for a conference. Below thetext box for entering a name, a drop down menu is provided that includesall of the groups that have been configured. The drop down menu can beused to select a first group for conferencing. Below the drop down menuare three buttons that can be used to specify the direction ofcommunication. Below the buttons is another drop down menu for selectinga second group for conferencing with the first group. For example, asshown in the illustration, the middle button is selected, which meansGroup 1 can hear Group 2 and Group 2 can hear Group 1. If the leftbutton is selected, Group 2 can hear Group 1, but Group 1 can't hearGroup 2. If the right button is selected, Group 1 can hear Group 2, butGroup 2 can't hear Group 1. A similar interface can be used to configurerooms of a group.

FIG. 21 is an illustration of an embodiment of a user interface on amobile device for starting a new wireless-conferencing group. Thisscreen allows the user to specify a name for the group and the radiosthat will be included in the group. The “Radios in range” section showsall radios that are within radio communication range, which can bedetected by performing a scan of different radios (e.g., staying on onefrequency for multiple superframes 300 and analyzing preambles of radiosor hopping to the one frequency during the extra frame 308). If the userselects the “Add” button for one of the radios that are in range, theselected radio is added to the “Radios in group” section. The “Remove”button can be used to remove radios that have been added to the group.After the user is satisfied with the radios that will be included in thegroup, the user can press the “Add” button at the bottom of the screento finalize the group. Radios that have been added to the group can thenreceive a notification to join the group.

FIG. 22 is an illustration of an embodiment of a user interface on amobile device for joining a wireless-conferencing group. A pop-upnotification illustrated in FIG. 22 would be displayed on the mobiledevice after the mobile device has been added to a group by a differentuser on a different device. For example, a master device can create thegroup and add slave devices to the group, and the pop-up notificationwould be displayed on the slave devices. The user can select “ACCEPT” tojoin the group or “DECLINE” to not join the group. Alternatively, theslave device can select a group to join and transmit a request to themaster device of the selected group. A similar pop-up notification canbe displayed on the master device and the user of the master device canallow or deny the request. In some embodiments, a key for decrypting issent to a radio when an invitation to join a group is sent. In someembodiments, a text message is sent to invite another radio to join agroup.

In some embodiments, preambles are used to identify a group using agroup ID (e.g., preambles are at a start of each data packet). The groupID can be similar to an address for multiple radios. In someembodiments, group IDs are not encrypted. In some embodiments, a radiois put in a mode to search for groups. In searching for groups, theradio listens on a first frequency for a period of time (e.g., a cycleand/or a super frame). The radio records the group IDs and/or timingtransmissions. If the radio does not receive transmission, the radiomoves to a second frequency (e.g., in case the radio was listening to anull transmission). In some embodiments, group IDs and/or radio numbersare mapped to names. Instead of “Group 1,” “Ski Team” shows up; insteadof “Group 2,” “Bob's Group” shows up; instead of “Group 3,” “SwimmingGroup” shows up; etc. Instead of “Radio 1,” “Jacob” shows up; instead of“Radio 2,” “Elise” shows up; etc.

In some embodiments, a non-transitory computer-readable medium, havinginstructions stored therein, which when executed cause a computer toperform a set of operations comprising: display a plurality ofwireless-conferencing groups on a screen; receive first data from one ormore radios of a first group of radios, wherein the first group ofradios is using a first multiple access protocol, and the first datacomprises voice data of the first group of radios; display a referenceto a second group of radios, wherein the second group comprises one ormore radios using a second multiple access protocol; receive a selectionof the second group; receive second data from one or more radios of thesecond group of radios based on receiving the selection of the secondgroup; and combine the first data with the second data.

In some embodiments, the first multiple access protocol is TDMA with ahop sequence and a first start time; the second multiple access protocolis TDMA with the hop sequence and a second start time; and the secondstart time is different from the first start time so that the firstgroup is offset, in time, from the second group. In some embodiments, aradio of the first group or the second group is dropped and/or added. Insome embodiments, radios are given privileges to add and/or drop radios.For example, a mobile app of a device of a master radio has a privilegeto drop or add another other radios. In some embodiments, a user is ableto create a group and thus the user's device is the master radio of thatgroup and the user has a set of privileges for that group. In someembodiments, the user can share the set of privileges with selectedother radios. In some embodiments, a radio is hard wired to have higherset of privileges. In some embodiments, group IDs are used to provideflexibility in creating and modifying groups.

In some embodiments, a non-transitory computer-readable medium, havinginstructions stored therein, which when executed cause a computer toperform a set of operations comprising: display a plurality of deviceson a screen; receive a first command for adjusting a first volume of afirst device of the plurality of devices; receive a second command foradjusting a second volume of a second device from the plurality of radiocommunication devices; receive a first data packet from the firstdevice, wherein the first data packet comprises first voice data;receive a second data packet from the second device, wherein the seconddata packet comprises second voice data; set a first amplitude of thefirst voice data based on the first command; set a second amplitude ofthe second voice data based on the second command; generate an outputthat includes the first voice data at the first amplitude and the secondvoice data at the second amplitude. In some embodiments, the firstamplitude is zero and/or the second amplitude is non zero.

Although embodiments provided herein describe the use of TDMA to enablefull-duplex radio communication, it is understood that the conceptsdisclosed herein may be extended to other multiple access methods, suchas code division multiple access (CDMA). Furthermore, embodimentsprovided herein can be implemented in a wide range of wireless devicesand/or work with a wide range of software applications and/or operatingsystems.

Different arrangements of the components depicted in the drawings ordescribed above, as well as components and steps not shown or describedare possible. Similarly, some features and sub combinations are usefuland may be employed without reference to other features and subcombinations. Embodiments of the invention have been described forillustrative and not restrictive purposes, and alternative embodimentswill become apparent to readers of this patent. Accordingly, the presentinvention is not limited to the embodiments described above or depictedin the drawings, and various embodiments and modifications can be madewithout departing from the scope of the claims below.

The subject matter of embodiments of the present invention is describedhere with specificity to meet statutory requirements, but thisdescription is not necessarily intended to limit the scope of anyclaims. The object matter may be embodied in other ways, may includedifferent elements or steps, and may be used in conjunction with otherexisting or future technologies. This description should not beinterpreted as implying any particular order or arrangement among orbetween various steps or elements except when the order of individualsteps or arrangement of elements is explicitly described.

Though some figures show radios that look like hand-held radios and thisdisclosure often describes using radios, embodiments of the inventioncan apply to non-hand-held radios including stationary radios located ina building or vehicle, mobile phones, and/or to telephones. One side ofthe communication system will be a single user full-duplex type radiothat is usually meant for one person like a cell phone. This single userradios can be connected together into a conferencing system like cellphones are currently combined into a conference call through the use ofa base station. Further, though this application uses the phrase “radiocommunication,” the term “radio” in not meant to limit communication toradio frequencies. Instead “radio,” when referring to radiocommunication, refers to communication using a frequency or plurality offrequencies in the electro-magnetic spectrum.

A number of variations and modifications of the disclosed embodimentscan also be used. For example, a Bluetooth headset (or other wirelessdevice) could be used to control functions of a radio. In someembodiments, a Bluetooth headset controls two radios (the Bluetoothhaving two addresses). In some embodiments, a Bluetooth headset is usedto switch between rooms of a group, rooms of different groups, sync twoor more radios, adjust volume, turn on and off the microphone, etc. Insome embodiments, two radios controlled by a Bluetooth headset arelinked by a signal compounder as discussed in the '377 patent.

Specific details are given in the above description to provide athorough understanding of the embodiments. However, it is understoodthat the embodiments may be practiced without these specific details.For example, circuits may be shown in block diagrams in order not toobscure the embodiments in unnecessary detail. In other instances,well-known circuits, processes, algorithms, structures, and techniquesmay be shown without unnecessary detail in order to avoid obscuring theembodiments.

Implementation of the techniques, blocks, steps and means describedabove may be done in various ways. For example, these techniques,blocks, steps and means may be implemented in hardware, software, or acombination thereof. For a hardware implementation, the processing unitsmay be implemented within one or more application specific integratedcircuits (ASICs), digital signal compounders (DSPs), digital signalprocessing devices (DSPDs), programmable logic devices (PLDs), fieldprogrammable gate arrays (FPGAs), processors, controllers,micro-controllers, microprocessors, other electronic units designed toperform the functions described above, and/or a combination thereof.

Also, it is noted that the embodiments may be described as a processwhich is depicted as a flowchart, a flow diagram, a swim diagram, a dataflow diagram, a structure diagram, or a block diagram. Although adepiction may describe the operations as a sequential process, many ofthe operations can be performed in parallel or concurrently. Inaddition, the order of the operations may be re-arranged. A process isterminated when its operations are completed, but could have additionalsteps not included in the figure. A process may correspond to a method,a function, a procedure, a subroutine, a subprogram, etc. When a processcorresponds to a function, its termination corresponds to a return ofthe function to the calling function or the main function.

Furthermore, embodiments may be implemented by hardware, software,scripting languages, firmware, middleware, microcode, hardwaredescription languages, and/or any combination thereof. When implementedin software, firmware, middleware, scripting language, and/or microcode,the program code or code segments to perform the necessary tasks may bestored in a machine readable medium such as a storage medium. A codesegment or machine-executable instruction may represent a procedure, afunction, a subprogram, a program, a routine, a subroutine, a module, asoftware package, a script, a class, or any combination of instructions,data structures, and/or program statements. A code segment may becoupled to another code segment or a hardware circuit by passing and/orreceiving information, data, arguments, parameters, and/or memorycontents. Information, arguments, parameters, data, etc. may be passed,forwarded, or transmitted via any suitable means including memorysharing, message passing, token passing, network transmission, etc.

For a firmware and/or software implementation, the methodologies may beimplemented with modules (e.g., procedures, functions, and so on) thatperform the functions described herein. Any machine-readable mediumtangibly embodying instructions may be used in implementing themethodologies described herein. For example, software codes may bestored in a memory. Memory may be implemented within the processor orexternal to the processor. As used herein the term “memory” refers toany type of long term, short term, volatile, nonvolatile, or otherstorage medium and is not to be limited to any particular type of memoryor number of memories, or type of media upon which memory is stored.

Moreover, as disclosed herein, the term “storage medium” or “memory” mayrepresent one or more memories for storing data, including read onlymemory (ROM), random access memory (RAM), magnetic RAM, core memory,magnetic disk storage mediums, optical storage mediums, flash memorydevices and/or other machine readable mediums for storing information.The term “machine-readable medium” includes, but is not limited toportable or fixed storage devices, optical storage devices, and/orvarious other storage mediums capable of storing that contain or carryinstruction(s) and/or data.

While the principles of the disclosure have been described above inconnection with specific apparatuses and methods, it is to be clearlyunderstood that this description is made only by way of example and notas limitation on the scope of the disclosure.

What is claimed is:
 1. A communication system for establishing directfull-duplex communications over a cellular frequency band, thecommunication system comprising: a first radio; and a second radio,wherein: the first radio and the second radio are configured to transmitand receive directly with each other; and the second radio is configuredto: transmit, to a cellular base station, a request to reserve a subband of the cellular frequency; receive a response to the requestindicating that the sub-band has been reserved; transmitting to thefirst radio a reference to the sub band; and transmit and receivedirectly with the first radio on the sub band.
 2. The communicationsystem for establishing direct full-duplex communications over acellular frequency band as recited in claim 1, wherein the second radiois a master radio.
 3. The communication system for establishing directfull-duplex communications over a cellular frequency band as recited inclaim 1, wherein the second radio is a slave radio.
 4. The communicationsystem for establishing direct full-duplex communications over acellular frequency band as recited in claim 1, further comprising athird radio configured to transmit and receive directly with the firstradio and the second radio on the sub band.
 5. The communication systemfor establishing direct full-duplex communications over a cellularfrequency band as recited in claim 1, wherein the reference to the subband is a frequency number and/or a bandwidth.
 6. The communicationsystem for establishing direct full-duplex communications over acellular frequency band as recited in claim 1, wherein the reference tothe sub band is one or more digits referencing a frequency number and/ora bandwidth.
 7. The communication system for establishing directfull-duplex communications over a cellular frequency band as recited inclaim 6, wherein the one or more digits corresponds to a frequencychannel.
 8. A mobile device for establishing direct full-duplexcommunications over a cellular frequency band, the mobile devicecomprising: a microphone configured to receive sound input; a speakerconfigured to generate audible output; a wireless transceiver configuredto transmit and receive wireless signals across a cellular frequencyband; and one or more processors coupled to the microphone, the speaker,and the wireless transceiver, the one or more processors beingconfigured to transmit, via the wireless transceiver, to a cellular basestation a request to reserve a sub-band of the cellular frequency bandfor direct, full-duplex communications.
 9. The mobile device forestablishing direct full-duplex communications over the cellularfrequency band as recited in claim 8, wherein direct communication doesnot use a base station.
 10. The mobile device for establishing directfull-duplex communications over the cellular frequency band as recitedin claim 8, wherein the one or more processors is further configured to:receive a response to the request indicating that the sub-band has beenreserved; and transmit, using a multiple access protocol, a reference tothe sub-band to a second mobile device.
 11. The mobile device forestablishing direct full-duplex communications over the cellularfrequency band as recited in claim 10, wherein the one or moreprocessors are further configured to transmit an assignment of atimeslot to another mobile device.
 12. The mobile device forestablishing direct full-duplex communications over the cellularfrequency band as recited in claim 8, wherein the one or more processorsis configured to determine that a cellular base station is not in range.13. The mobile device for establishing direct full-duplex communicationsover the cellular frequency band as recited in claim 12, wherein the oneor more processors is configured to use a default frequency band basedfor communicating directly with another mobile device base ondetermining that the cellular base station is not in range.
 14. Themobile device for establishing direct full-duplex communications overthe cellular frequency band as recited in claim 13, wherein the defaultfrequency band is within the cellular frequency band.
 15. The mobiledevice for establishing direct full-duplex communications over thecellular frequency band as recited in claim 13, wherein the defaultfrequency band is within an unlicensed range.
 16. The mobile device forestablishing direct full-duplex communications over the cellularfrequency band as recited in claim 15, wherein the default frequencyband is between 900 MHz and 970 MHz.
 17. The mobile device forestablishing direct full-duplex communications over the cellularfrequency band as recited in claim 13, wherein the one or moreprocessors is configured to periodically check if the mobile device iswithin range of a cellular base station after determining that acellular base station is not in range.
 18. A method for establishingdirect full-duplex communications using a cellular band, the methodcomprising: transmitting, to a cellular base station, a request toreserve a sub band of the cellular frequency band using a first mobiledevice; receiving, by the first mobile device, a response to the requestindicating that the sub-band has been reserved; transmitting to a secondmobile device a reference to the sub band; and transmitting andreceiving directly with the second radio using the sub band.
 19. Themethod for establishing direct full-duplex communications as recited inclaim 18, wherein the transmitting and receiving directly with thesecond mobile device does not use the cellular base station.
 20. Themethod for establishing direct full-duplex communications as recited inclaim 18, further comprising transmitting and receiving with the secondmobile device and a third mobile device on a frequency band outside thecellular frequency band, wherein the frequency band outside the cellularfrequency band is part of an open spectrum band, before the request toreserve the sub band.